我应该使用什么事件在jQuery中异步提交表单?

时间:2012-06-26 07:57:19

标签: javascript jquery

我最近开始使用jQuery / AJAX将数据提交到我的PHP API。

目前我正在使用的是html中的输入类型=“按钮”,然后是.click()jQuery函数来提交它。

我不太确定这是最好的方法,但是我应该使用带有preventDefault()的输入类型=“submit”吗?

3 个答案:

答案 0 :(得分:5)

最好在表单上使用.submit(),而不是在提交按钮上使用.click()。在这两种情况下,preventDefault都是必要的。原因是用户可以在编辑某个字段时按 Enter 提交表单,如果您订阅了按钮的.click事件,则此事件不会触发。

答案 1 :(得分:2)

您可以使用.submit(),只需在回调中插入return false;即可阻止实际提交表单并执行自己的操作。

$('#target').submit(function() {
  alert('Handler for .submit() called.');
  return false;
});

答案 2 :(得分:1)

提交不仅限于通过jquery的任何特定事件。您可以使用任何存在的事件,例如您或其他人编写的单击或自定义方法/函数,根据用户行为(如悬停或其他任何内容)发送ajax请求。 简单地说,如何使用jquery ajax受到你的想象和练习的限制。