基于this post我要求用户确认保存数据 在离开页面之前,如果用户在文本字段中输入任何数据。
但是当页面加载并且我的表单ID为“Form1”
时,我收到以下错误
<script type="text/javascript" language="javascript">
window.onload = function (e) {
var form_has_been_modified = 0;
$("form[id^='Form1']").on("change keyup", ":input", function () {
form_has_been_modified = 1;
})
};
window.onbeforeunload = function (e) {
if (!form_has_been_modified) {
return;
}
var message = "Do you want to save the data before leave the page?";
var e = e || window.event;
// For IE and Firefox prior to version 4
if (e) {
e.returnValue = message;
}
// For Safari
return message;
};
</script>
如何解决这个问题?
已更新:在HTML源代码中显示<form name="aspnetForm" method="post" action="EditMember.aspx?Id=3664653" onsubmit="javascript:return WebForm_OnSubmit();" id="aspnetForm" enctype="multipart/form-data">
,如何在上面的代码中使用此表单?
答案 0 :(得分:4)
方法on()
已添加到jQuery 1.7版。
您似乎正在使用1.4.1版。尝试更新jQuery,错误应该消失。
答案 1 :(得分:0)
您的选择器错误
$(“form [id ^ ='Form1']”)应为$(“#Form1”)
另外不要忘记可能还有更多的输入标签(例如select和textarea)