jQuery提交未按下按钮单击

时间:2013-11-12 11:57:04

标签: jquery form-submit

我想点击按钮提交表单。

“警报1”显示但submit()内的“警报2”没有显示。你能告诉我为什么吗?

HTML

<body>
<form method="post" action="">

    <input type=button id="send">SEND</a>

</form>
</body>

JAVASCRIPT

$('body').delegate('#send', 'click', function () {

    alert('alert 1');

    $('form').submit(function (event) {

        alert('alert 2')
        event.preventDefault()

    });

});

这是我的小提琴。

http://jsfiddle.net/bvV2W/

2 个答案:

答案 0 :(得分:0)

问题是:你没有提交,你只有一个按钮而不是提交按钮。

由于您没有提交提交事件,因此不会进入函数提交

尝试将按钮更改为:

<input type=submit id="send">SEND</a>

或试试这个:

<form method="post" action="" id="form">

$('body').delegate('#send', 'click', function() {
        alert('alert 1');
        $('#form').trigger('submit');
        $('#form').submit(function (event) {
                alert('alert 2')
                event.preventDefault()

        });
    );

答案 1 :(得分:-1)

因为这样你将一个函数附加到submit事件。当您提交表单但未在任何地方进行时,它将被提出。

您需要在此之后调用submit事件,写一下:

$('form').submit(); // no arguments