JQuery听表单提交事件

时间:2014-01-28 22:30:43

标签: jquery html forms

过去几个小时我一直在拔头发,我似乎无法让一个简单的JQuery提交动作监听器工作。这是我正在使用的代码:

<form id="hello-world" action="sayhello">
    <input type="submit" value="Hello!">
</form>
<script type="text/javascript">
    $('#hello-world').submit(function(ev) {

        ev.preventDefault(); // to stop the form from submitting
        alert("form submitted");
    });  
</script>

点击“你好!”按钮,不显示警报,并执行操作(即我的浏览器尝试加载localhost / sayhello。

有谁知道发生了什么事?

2 个答案:

答案 0 :(得分:0)

可能是在元素准备好之前尝试附加事件。确保在DOM完全加载后附加处理程序。

$(function() {
    $('#hello-world').submit(function(ev) {

        ev.preventDefault(); // to stop the form from submitting
        alert("form submitted");
    });
});

http://api.jquery.com/ready/

答案 1 :(得分:0)

看起来它可能是其他东西,例如jquery可能没有加载?控制台中是否还有其他错误?

您的代码在jsfiddle上完美运行,没有任何更改:

http://jsfiddle.net/7jQRS/

<form id="hello-world" action="sayhello">
    <input type="submit" value="Hello!">
</form>
<script type="text/javascript">
    $('#hello-world').submit(function(ev) {

        ev.preventDefault(); // to stop the form from submitting
        alert("form submitted");
    });  
</script>