我注意到 jquery submit() 函数无法提交以下表单。问题似乎是按钮的 id,它不应该是“提交”。为什么它会这样工作?
<script src="jquery.js"></script>
<form action="" id="Foo" method="POST">
<button id="submit" >Bla</button>
</form>
我在控制台中调用了以下行:
$('#Foo').submit();
更新
即使它已经提交
但是如果你必须使用 jquery 手动提交,你必须使用这个:
$('#Foo')[0].submit();
由于jquery的选择返回了一个与dom相关的对象数组,第一个就是dom本身,所以可以这样提交
编辑:
如果你想阻止它提交使用这个:
$('#submit').onclick(function(event){
event.preventDefault();
});
编辑 2:
如果您使用标签<button>
,则应始终声明预期的type
属性。在某些浏览器中,默认值为“提交”,而其他浏览器的默认值为“按钮”。
请更改您的提交按钮:
从:
<button id="submit" >Bla</button>
进入:
<input class="submit" name="commit" type="submit" value="Bla" />
您应该使用表单 ID 而不是提交按钮 ID 提交。
$('#Foo').submit();
即使有 Id"submit"
它的提交。
检查小提琴:http: //jsfiddle.net/fRUUd/1342/