1

我注意到 jquery submit() 函数无法提交以下表单。问题似乎是按钮的 id,它不应该是“提交”。为什么它会这样工作?

<script src="jquery.js"></script>

  <form action="" id="Foo" method="POST">  

   <button id="submit" >Bla</button>
  </form>

我在控制台中调用了以下行:

$('#Foo').submit();
4

3 回答 3

4

更新

即使它已经提交

但是如果你必须使用 jquery 手动提交,你必须使用这个:

$('#Foo')[0].submit();

由于jquery的选择返回了一个与dom相关的对象数组,第一个就是dom本身,所以可以这样提交

编辑

如果你想阻止它提交使用这个:

$('#submit').onclick(function(event){
   event.preventDefault();
});

编辑 2

如果您使用标签<button>,则应始终声明预期的type属性。在某些浏览器中,默认值为“提交”,而其他浏览器的默认值为“按钮”。

于 2013-06-18T09:11:36.967 回答
1

请更改您的提交按钮:

从:

<button id="submit" >Bla</button>

进入:

<input class="submit" name="commit" type="submit" value="Bla" />
于 2013-06-18T11:00:54.953 回答
0

您应该使用表单 ID 而不是提交按钮 ID 提交。

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

即使有 Id"submit"它的提交。

检查小提琴:http: //jsfiddle.net/fRUUd/1342/

于 2013-06-18T09:07:21.783 回答