submit()事件未在表单上触发

时间:2013-02-05 16:40:06

标签: javascript jquery

我尝试在提交表单后禁用表单的提交按钮以防止双重发布。虽然我可以禁用该按钮,但我无法获得实际提交的表单。

这是jQuery:

// Disable submit button after click to prevent double posting
$(document).ready(function () {
    $('#add_pin :submit').on('click', function (e) {

        $(this).prop('disabled', true);    

    });
});

这将成功禁用该按钮,但就是这样。

我尝试在.prop()之后添加$(this).submit(),但它仍然没有做任何事情。

HTML只是:

<form action="http://example.com/add" method="post" accept-charset="utf-8" id="add_pin" enctype="multipart/form-data">
// input fields
<input type="submit" name="submit" value="Add Pin" class="radius button">
</form>

我做错了什么?

1 个答案:

答案 0 :(得分:3)

最好使用表单的onsubmit事件而不是提交按钮的click事件,因为onsubmit将处理来自enter键的提交以及单击的提交按钮。

$(document).ready(function () {

    $('#add_pin').submit(function(){
        $(this).find('input[type=submit]').prop('disabled', true);
    });

});