我无法弄清楚为什么脚本不能使用表单。为什么$("form").submit(function()
不会调用ID为form
的表单?这个脚本甚至没有执行window.onbeforeunload
所以我猜这个脚本有问题。有谁知道什么是错的?
<form id="formID" class="access_form" name="form" method="post" action="site.com">
<div class="row">
<label for="email">Email Address:</label>
<input class="txt_email" type="text" id="email" name="email" value="" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" />
</div>
<div class="row">
<input type="submit" class="btn_access" value="Get Immediate Access" name="submit1" />
</div>
</form>
JavaScript的:
var formHasChanged = false;
var submitted = false;
$(document).on('change', 'form.confirm-navigation-form input, form.confirm-navigation-form
select, form.confirm-navigation-form textarea', function (e) {
formHasChanged = true;
});
$(document).ready(function () {
window.onbeforeunload = function (e) {
if (formHasChanged && !submitted) {
var message = "Please enter your email", e = e || window.event;
if (e) {
e.returnValue = message;
}
return message;
}
}
$("#formID").submit(function () {
submitted = true;
});
});
答案 0 :(得分:0)
试试这个。表单的id是表单本身。所以使用jQuery
选择这样的表单$("#form").submit(function () {
submitted = true;
});
OR
或者尝试为表单提供另一个id,例如“formID”。然后选择使用该ID。
$("#formID").submit(function () {
submitted = true;
});