2012-08-22 104 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(); 

希望幫助!

相關問題