我的HTML页面中有一个简单的jsGrid。我将网格配置为仅对“员工ID”列进行编辑。我还在我的脚本中实现了onItemUpdated回调,以便在更新Employee ID时,它将触发回调并调用Web服务来检索员工信息(例如,名称和地址)。在Web服务响应结果后,它将分别使用jsGrid updateItem API更新项名称和地址。
问题是在事件触发后,它会对回调执行递归调用,因为updateItem API也会再次重新触发onItemUpdated回调。
static void Main(string[] args)
{
InvokeMethod im= new InvokeMethod();
im.checkID(dataFromString("00 00 00 00"));
im.checkID(dataFromString("00 00 00 01"));
Console.ReadLine();
}
希望你能帮助我解决这个问题的更好策略。
谢谢!
答案 0 :(得分:1)
onItemUpdated
回调通常用于在更新项目时执行一些额外的处理。对于基本更新方案,您只需在配置中定义controller.updateItem
即可。网格的更新将自动发生。
$("#jsGrid").jsGrid({
...,
controller: {
loadData: function() {
// retriving data request
return $.ajax({ ... });
},
updateItem: function(item) {
// updating data request
return $.ajax({
url: "http://myresource/api/items"
type: "PUT",
data: item
});
}
}
});