jQuery句柄JS表单提交

时间:2012-02-02 17:08:34

标签: javascript jquery

我有以下jQuery:

$("form").submit(function() {
    //DO STUFF HERE             
});

但是,它没有检测/捕获/处理此JavaScript中发生的提交

document.form1.submit()

似乎超级直截了当。我确信这对我来说简单/愚蠢。提前谢谢。

4 个答案:

答案 0 :(得分:0)

jQuery只捕获默认的浏览器行为,比如单击提交按钮,以及由jQuery本身添加的事件......

答案 1 :(得分:0)

使用JavaScript调用表单的submit方法将绕过附加到表单的任何事件处理程序。当用户提交表单时,它们会触发,而不是在页面出现时触发。

您需要在以编程方式提交时手动触发任何事件处理程序。 jQuery submit method将为您抽象出来。因此,在jQuery对象上调用submit()而不是直接在HTMLFormElementNode上调用。

jQuery('#form1').submit(); // Assuming you have a form with an id instead of the obsolete name attribute

答案 2 :(得分:0)

我建议您使用jQuery提交表单 - 将您的document.form1.submit()替换为:

$('#form1').submit();

这解决了许多浏览器不一致的问题,哪些操作会触发哪些javascript事件。

答案 3 :(得分:-1)

在表单元素上指定一个id,然后使用该ID,如

$("#formid").submit(function() {
    //DO STUFF HERE             
});