假设我已经创建了以下处理程序(回调)的形式:
$('form').submit(function (event) {
event.preventDefault();
alert('form submitted');
});
为什么调用$('form').get(0).submit
不叫提交处理? 该表格只是被直接提交。
假设我已经创建了以下处理程序(回调)的形式:
$('form').submit(function (event) {
event.preventDefault();
alert('form submitted');
});
为什么调用$('form').get(0).submit
不叫提交处理? 该表格只是被直接提交。
.get(0)
返回原生JS DOM元素(同$('form')[0]
然后您正在触发直接提交事件。
如果你想获得的第一个元素使用.eq(0)
并触发使用jQuery的提交风格.submit()
摘要 :
$('selector')[0]
返回天然JS DOM元素 .get(0)
同[0]。 .eq(0)
返回第一个元素作为jQuery对象。 更多 :
$('form.selector').submit(function (e) { });
$('form.selector').submit();
或$('form.selector').trigger('submit');
$('form').eq(0).submit();
演示 : 的jsfiddle
我希望你需要它的东西。
演示jQuery的 :
$('form').submit(function (event) {
event.preventDefault(); // Will prevent the native handler from firing.
alert('form submitted :' + $(this).attr("id"));
});
//change the `.eq(index)` to 1 to trigger the submit on the second form:
$('form').eq(0).submit(); // Same as: $('form').eq(0).trigger("submit");
演示HTML:
<form id="form1"></form>
<form id="form2"></form>