我正在使用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;
} }); });
答案 0 :(得分:14)
如果您在网格中使用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();
希望有所帮助!