我正在使用Slickgrids,取得了很大的成功.我有一个工作的ajax编辑 – 但我正在尝试添加一个功能;
以下是我的代码,允许我更新单元格 – 它的工作原理 – 但是我希望能够在从json数据中返回值之后修改单元格.看到我的代码如下 – 我已经放在首都,我需要一个命令来更新编辑的单元格与新的返回的数据
grid.onCellChange.subscribe(function(e,args) { var dataString = "col="+grid.getColumns()[args.cell].name+"&row="+args.item.new_training_calendar_id+"&value="+data[args.row][grid.getColumns()[args.cell].field]; $.ajax({ type: "POST",url: "mydomain/update_cell",data: dataString,dataType: "json",success: function(a) { if(a.status != "ok") { alert(a.msg); undo(); } else { alert(a.msg); **CHANGE_CELL_HERE TO (a.newdata);** } return false; } }); });
解决方法
如果您在网格中使用DataView,可以使用:
grid.invalidateRow(args.row); var row = dataView.getItem(args.row); row[grid.getColumns()[args.cell].field] = a.msg; dataView.updateItem(args.item.id,row); grid.render();
如果您正在使用普通网格,则可以使用:
grid.invalidateRow(args.row); data[args.row][grid.getColumns()[args.cell].field] = a.msg; grid.render();
希望有帮助!