在事件处理程序中访问数据源
Access datasource in eventhandlers
以下代码产生错误:
初始化:
var firstC = ["AUD","ZAR"];
var secondC= ["AUD","BRL","CAD","USD"];
function colorG(item, col, row){
var currency = firstC[col] + "-"+ secondC[row];
if(verifyCurrency(currency)==true)
item.getStyle().backgroundColor="green";
}
function verifyCurrency(currency)
{
if(this.getRowData().getExpressionValue("row[digital]").indexOf(currency)!=-1)
return true;
else return false;
}
单元格:
colorG(this,1,0);
我必须在哪个阶段放置 verifyCurrency 才能正常工作?
您在 verifyCurrency 函数中关于“this”的假设是错误的。我不知道 Javascript 能告诉你更多关于这个的信息,但我认为“this”总是在函数内部定义。但它没有指向您的项目实例!
要解决此问题(无双关语意),请将该项目作为参数传递给您的 verifyColor 函数。
以下代码产生错误:
初始化:
var firstC = ["AUD","ZAR"];
var secondC= ["AUD","BRL","CAD","USD"];
function colorG(item, col, row){
var currency = firstC[col] + "-"+ secondC[row];
if(verifyCurrency(currency)==true)
item.getStyle().backgroundColor="green";
}
function verifyCurrency(currency)
{
if(this.getRowData().getExpressionValue("row[digital]").indexOf(currency)!=-1)
return true;
else return false;
}
单元格:
colorG(this,1,0);
我必须在哪个阶段放置 verifyCurrency 才能正常工作?
您在 verifyCurrency 函数中关于“this”的假设是错误的。我不知道 Javascript 能告诉你更多关于这个的信息,但我认为“this”总是在函数内部定义。但它没有指向您的项目实例!
要解决此问题(无双关语意),请将该项目作为参数传递给您的 verifyColor 函数。