我简化了我的代码以减少无关的信息,但是我在减少代码方面遇到了与更复杂版本相同的问题。我有一个这样的表格:
<form id="password_reset_form" action="script_reset_password.php" method="POST">
<input type="submit" value="Set Password" class="button-inactive" />
</form>
和jQuery代码如下:
<script type="text/javascript">
$(document).ready(function(){
$("#password_reset_form").submit(function(){
alert("form submit attempted");
event.preventDefault();
}
});
</script>
但是jQuery .submit()
没有被调用。目标是阻止表单提交并在满足特定条件时显示错误消息,但我的问题是,为什么在单击.submit()
时不会调用<input type="submit" />
?
答案 0 :(得分:5)
您需要从回调函数中捕获event
。
$(document).ready(function(){
$("#password_reset_form").submit(function(e){
alert("form submit attempted");
e.preventDefault();
});
});
答案 1 :(得分:2)
您的代码中存在语法错误,需要关闭文档准备工作。
$(document).ready(function(){
$("#password_reset_form").submit(function(evt){
alert("form submit attempted");
evt.preventDefault();
});
});