在事件处理程序中访问数据源

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 函数。