0
我只是想使用我自己的工作流從我的網格刪除記錄。這是不是通過Javascript做到這一點的正確方法?下面的函數刪除該行,但刷新頁面顯示該行未實際從數據源中刪除,並且在Chrome的網絡選項卡中看不到任何請求。我應該補充一點,我能夠完美地獲得對grid和dataItem的引用。劍道網格定製刪除不堅持數據源
function delete(e) {
var $tr = $(e.currentTarget).closest("tr"),
grid = this,
dataItem = grid.dataItem($tr),
id = $tr.attr(kendo.attr("uid")),
model = grid.dataSource.getByUid(id);
e.preventDefault();
grid.dataSource.remove(model);
grid.dataSource.sync();
}
編輯 - 這是我的數據源是如何定義的:
$scope.contacts = new kendo.data.DataSource({
transport: {
read: {
url: apiUrl,
dataType: "json",
type: "GET"
},
update: {
url: apiUrl,
dataType: "json",
type: "POST"
},
destroy: {
url: apiUrl,
type: "DELETE"
},
create: {
url: apiUrl,
dataType: "json",
type: "POST"
}
},
pageSize: 10
});
如何定義DataSource.transport? – OnaBai 2013-05-01 20:23:16
@OnaBai:我編輯了我的帖子以包含我的數據源的聲明。 – Gho5t 2013-05-02 14:14:09
在你的'delete'函數中,'dataItem'和'model'應該是一樣的。它應該是足夠的'dataItem'然後'grid.dataSource.remove(dataItem);'但這應該沒有什麼區別,我沒有看到你的傳輸定義有什麼問題...... :-( – OnaBai 2013-05-02 14:58:04