jQuery MiniUI

 找回密码
 立即注册
查看: 2006|回复: 2
打印 上一主题 下一主题

grid更新行出现问题 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2017-9-14 15:21:58 |只看该作者 |倒序浏览
var row = gridB.findRow(function(row){
        if(row.objs[0]==user){
                return true;
        }
});
for(var i=0; i<=31; i++){
        if (i >= (Number(data.beginDate)+Number(last_col_gridB)) && i <= (Number(data.endDate)+Number(last_col_gridB))) {
                var a = "objs["+i+"]";
                gridB.updateRow(row,{ a: data.itemCode});
        }
}
代码如上,row可以拿到,a也是正常,但是gridB.updateRow()这个方法没有执行,但是将a换成固定的如:objs[4]这个方法gridB.updateRow(row,{ "objs[4]" : data.itemCode})可以顺利执行,为什么会出现这种情况?

Rank: 8Rank: 8

沙发
发表于 2017-9-14 15:37:05 |只看该作者
这里a是变量,就相当于这样的环境
var a="abc";
var obj={};
obj.a    //错误
obj[a]  //正确

你这里需要这样处理
var rowData={}
rowData[a]=data.itemCode;
gridB.updateRow(row,rowData);

Rank: 2

板凳
发表于 2017-9-14 15:50:10 |只看该作者
felt 发表于 2017-9-14 15:37
这里a是变量,就相当于这样的环境
var a="abc";
var obj={};

谢谢,学到了

Archiver|普加软件

GMT+8, 2024-11-26 07:24 , Processed in 1.026774 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部