提交按钮中的jquery click()

ite*_*eam 10 javascript forms jquery click submit

我在表单中的提交按钮上有一个.click()函数:

$("#submitId").click(function () {
    $('#hiddenInput').val(someVariable);
});
Run Code Online (Sandbox Code Playgroud)

它就像一个魅力.单击提交按钮时,click()函数填充隐藏的输入变量,然后提交整个表单.然后,服务器接收具有刷新内容的隐藏输入.

我的问题是:它会一直有效吗?是否有任何危险,由于某些原因我还不知道,提交操作首先执行,click()函数稍后执行?我想确保隐藏的输入总是得到刷新.

Pet*_*rKA 22

使用表单时,总是建议让submit按钮完成它的工作:触发表单的提交事件 ......这就是它的意思.然后你会在按钮submitform而不是click事件上听事件submit.

您可以使用event.preventDefault()以防止默认提交表单,以便您可以进行一些内务管理,然后您可以提交表单.

$("#submitId").closest('form').on('submit', function(event) {
    event.preventDefault();
    $('#hiddenInput').val(someVariable); //perform some operations
    this.submit(); //now submit the form
});
Run Code Online (Sandbox Code Playgroud)

或简单地说,

$('form').on('submit', function(event) {
    event.preventDefault();
    $('#hiddenInput').val(someVariable); //perform some operations
    this.submit(); //now submit the form
});
Run Code Online (Sandbox Code Playgroud)


Tra*_*s J 4

最好将值更新直接附加到表单的提交处理程序,如下所示

$("#submitId").closest("form").submit(function () {
 $('#hiddenInput').val(someVariable);
});
Run Code Online (Sandbox Code Playgroud)