【发布时间】:2012-08-04 08:48:33
【问题描述】:
我想在主文件中编写 Jquery 代码,这样如果用户更改页面并且有任何未保存的更改,用户应该得到警报。 我得到了一个答案:link
但在大多数解决方案中,我必须在所有页面上编写代码。我希望它只写在一个地方,这样每个人都不必担心在他们的模块中编写它。我的代码是这样的:
<script type="text/javascript">
var isChange;
$(document).ready(function () {
$("input[type='text']").change(function () {
isChange = true;
})
});
$(window).unload(function () {
if (isChange) {
alert('Handler for .unload() called.');
}
});
</script>
但每次我在文本框中进行更改时,.change() 事件都不会触发。
代码有什么问题?
编辑: 我将 .change() 更改为 .click 并被触发。我正在使用 jquery 1.4.1 ..是因为 jquery 版本导致 change() 不起作用吗?
【问题讨论】:
-
所有输入字段都是静态的还是有些是动态添加到表单中的(或通过ajax加载)?
-
但在大多数解决方案中,我必须在所有页面上编写代码。 为什么不使用外部脚本文件?
-
@Raminson 是对的,写一个外部 js 文件,然后将它包含在页面中。
-
非 jquery 版本:stackoverflow.com/questions/7317273/…
标签: javascript jquery