我正在尝试使用 Telerik 的 ajax 删除事件从 Telerik mvc 网格中删除记录。我还定义了onDelete
客户端事件,我在其中验证了一些事情,并在此基础上我想删除记录,我的客户端onDelete
功能是这样的
function onDelete(e) {
if (confirm("Are you sure you want to delete?")) {
$.getJSON('@Url.Action("GetStatus", "MyController")', { UserId: e.dataItem.UserId}, function (status) {
if (status == 0) {
return true;
}
else if (status == 1) {
return confirm("Status 1, sure you want to delete?");
}
else {
alert("Status 2, cannot be deleted");
return false;
}
});
}
else {
return false;
}
}
在网格方面我有这样的东西
.DataBinding(dataBinding => dataBinding.Ajax()
.Delete("_Delete", "MyController"))
.ClientEvents(events => events.OnDelete("onDelete"))
问题是如果我在第一次确认时选择取消,它不会删除记录。但是,如果我说可以删除,那么它不会等待进一步的验证(我正在通过 ajax 响应进行)并删除记录。
如果我简单地说return true
或者return false
它有效。
似乎它没有等待ajax响应。有什么解决办法吗?