我在 ASP.Net MVC3 中有一个使用 Razor 引擎的网页。我在此页面中使用 Telerik MVC 网格批处理编辑。使用 Telerik 的内置 onDataBinding 事件,我可以强制用户在尝试转到下一页时保存他的更改。但是当用户关闭浏览器窗口或单击标题上的菜单按钮时,如果网格中有未保存的更改,则不会提示他保存这些更改。我该如何处理?请帮忙。我想给用户一个提示,告诉他他有未保存的更改。
谢谢, 存储空间
最佳答案
您可以捕获浏览器关闭事件并通过调用 .hasChanges()
方法检查您的 Telerik 网格是否有任何未保存的更改。
function wireUpEvents() {
// Check for grid changes before page unload
window.onbeforeunload = function() {
var grid = $("#MyGrid").data('tGrid');
if (grid.hasChanges()) {
if (!confirm('You are going to lose any unsaved changes. Are you sure?')) {
e.preventDefault();
}
}
}
}
// Wire up the events as soon as the DOM is ready
$(document).ready(function() {
wireUpEvents();
});
关于javascript - 具有批量编辑网格的 Telerik MVC 网站可防止窗口关闭时未保存的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9285018/