jQuery MiniUI
标题:
关于cellendedit事件的问题。
[打印本页]
作者:
lixiaoliang7
时间:
2012-11-6 05:17:51
标题:
关于cellendedit事件的问题。
在事件中修改e.record中某列的数据,每次都是第二次修改才生效。请问是什么原因呢?
我测试了,保证每次事件都是正确触发了的。
作者:
lixiaoliang7
时间:
2012-11-6 05:39:40
本帖最后由 lixiaoliang7 于 2012-11-6 05:40 编辑
我又测试了一下,似乎是第一次record.xx修改后的值,第二次修改时才会显示至页面中
作者:
lixiaoliang7
时间:
2012-11-6 06:00:38
拿这个DEMO即可还原一下情况
http://miniui.com/demo/#src=datagrid/cellvalidation.html
修改:
datagird添加oncellendedit="cellendedit"
然后添加js方法
function cellendedit(e) {
var now = new Date();
alert(now);
e.record.loginname = now;
}
编辑一列即可发现,值并没有马上显示至loginname列中
当进行第二次编辑时,发现上次的值显示到了loginname列中(可以拿alert出来的值进行了一下对比,看秒就好了)
作者:
lixiaoliang7
时间:
2012-11-6 07:53:18
但我发现最终提交后的json串,是正常的。
作者:
factory
时间:
2012-11-6 09:45:26
lixiaoliang7 发表于 2012-11-6 07:53
但我发现最终提交后的json串,是正常的。
我昨天理解错误了,以为你只是修改这行的数据,然后提交.
你这样应该是这样做:
function cellendedit(e) {
var now = new Date();
grid.updateRow(e.row,{loginname:now});
}
复制代码
应该用gird.updateRow(row,rowData)这个方法
欢迎光临 jQuery MiniUI (http://miniui.com/discuss/)
Powered by Discuz! X2