2012-08-22 61 views
9

我使用了很多成功的Slickgrids。我有Ajax编辑所有工作 - 但我想添加一个功能;编辑后更改slickgrid单元格数据

下面是我的代码,它允许我更新单元格 - 它按预期工作 - 但我希望能够在使用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; 
       } }); }); 

回答

14

的editted电池如果在您的网格使用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(); 

希望帮助!

相关问题