表单提交时不调用jQuery .submit()

时间:2015-10-19 18:59:56

标签: javascript jquery forms

我简化了我的代码以减少无关的信息,但是我在减少代码方面遇到了与更复杂版本相同的问题。我有一个这样的表格:

<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" />

2 个答案:

答案 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();
        });
});

https://jsfiddle.net/h19bk8ft/2/