在询问用户是否要离开之前检查 ASP 页是否脏
Checking if an ASP page is dirty before asking user if they want to leave
我有一个 ASP.NET 表单,它有一堆用户输入、文本框、复选框等。我需要能够检查用户是否在没有保存的情况下对表单进行了编辑,如果是这样提示,则在卸载之前。
我有一个脏标志,一旦用户编辑其中一个文本框就会设置。如果他们将数据保存在表单上,那么我会重置标志。因此,只有在用户编辑但尚未保存时,才应设置该标志。
然后,我使用此标志决定是否提示用户"您确定要离开此页面吗?
代码片段:
var _isDirty = false;
$(function () {
try {
$("#MainContent_txtSometextBox").change(function () {
_isDirty = true;
});
} catch (e) { }
});
问题是我不想在每个控件上都设置它。是否可以在页面级别设置它?我认为这不会那么容易,因为我们在页面上也有自定义用户控件。
你可以传递一个不同的选择器
$("input, select, textarea").change(function () {
_isDirty = true;
});
您可以根据需要扩展此设置。
如果需要限制它,请将其包裹在div
中,然后find
。
$("#myForm").find("input, select, textarea").change(function () {
_isDirty = true;
});
您可以使用 jquery 的输入选择器来定位所有输入、文本区域、选择和按钮元素。对于按钮,您需要单击事件,对于文本框和区域,脏标志在失去焦点时触发。
演示
$('#body :input').change(function () {
_isDirty = true;
});
相关文章:
- 主干-不管怎样,检查事件以前是否绑定过
- 如何让程序检查所选单词中是否有按键
- 用于检查数组中是否存在元素的javascript自定义方法
- 使用 jQuery 检查所有值是否为空或已填充
- 如何检查元素的内容是否为空,如果为空,请在jquery中删除该元素
- 使用map来检查是否为真'不起作用
- 遍历 JSON 对象并检查 URL 是否以某个值结尾
- 使用onkeyup JS事件检查输入的值是否唯一
- JS数组-检查对象值是否重复
- PhantomJS - 检查javascript函数是否正在运行的任何方法
- 如何使用jQuery可编辑插件检查ajax是否成功完成
- 如何在AngularJS中有效地检查日期是否有效
- 如何检查数组中的对象是否等于选项值
- 检查是否存在使用chrome扩展的javascript库
- 当一些文本粘贴到文本框中时(没有设置超时),是否检查数字
- 如何检查是否检查了分区中的所有单选按钮
- 验证是否检查了1到3个复选框,但id不同
- JavaScript 的类型函数是否检查空值
- 如何知道angularjs中的控制器中是否检查了单选按钮
- 在垃圾收集期间是否检查持久收集