我需要在ASP .Net应用程序中实现“未保存的更改”提示。如果用户修改了Web表单上的控件,并试图在保存之前导航离开,则将出现提示,警告他们尚未保存更改,并为他们提供取消并保留在当前页面上的选项。如果用户未触摸任何控件,则不应显示该提示。
理想情况下,我想用JavaScript实现此功能,但是在我开始滚动自己的代码之前,是否有任何现有的框架或推荐的设计模式来实现这一目标?理想情况下,我希望可以以最小的更改轻松地在多个页面上重复使用的东西。
使用jQuery:
var _isDirty = false; $("input[type='text']").change(function(){ _isDirty = true; }); // replicate for other input types and selects
根据需要与onunload/ onbeforeunload方法结合。
onunload
onbeforeunload
从注释中,以下内容引用了所有输入字段,而没有重复的代码:
$(':input').change(function () {
使用$(":input")是指所有输入,文本区域,选择和按钮元素。
$(":input")