好的,我有一个看起来像这样的jQuery .on()函数....
$("#grid").on('rowdoubleclick', function(event) {
var appData = $("#grid").jqxGrid('getrowdata', event.args.rowindex);
var appID = appData.application_id
var cellClassTitle = function(row, column, value) {
alert("VALUE: " + value + " appData.title: " + appData.title);
if (value == appData.title)
{
return "yellowCell"
}
}});
我的问题是,在第一次双击时,cellClassTitle函数中的appData.title变量只被评估一次。每次doubleclicked行时,cellClassTitle函数外部的appData变量都会计算,但appData.title值保持不变。每次执行.on('rowdoubleclick')函数时,如何更新它?
答案 0 :(得分:1)
定义rowdoubleclick处理程序范围之外的函数,例如
var appData = appData || {title:""};
var cellClassTitle = function(row, column, value) {
alert("VALUE: " + value + " appData.title: " + appData.title);
if (value == appData.title)
{
return "yellowCell"
}
}
$("#grid").on('rowdoubleclick', function(event) {
appData = $("#grid").jqxGrid('getrowdata', event.args.rowindex);
var appID = appData.application_id
});
免责声明:这是令人讨厌的,注意不要污染全球范围! http://www.yuiblog.com/blog/2006/06/01/global-domination/