$ {'#formID')。submit和$('#formID')[0] .submit有什么区别?

时间:2018-11-15 12:40:34

标签: javascript jquery html5 forms

这是示例项目的摘要版本:

HTML:

<form id="formID">

    <input id="btnSubmit" type="button" value="Submit" />

</form>

JS:

$('#btnSubmit').click(function() {

    // Method 1
    // $('#formID').submit();

    // Method 2
    $('#formID')[0].submit();

}

在更复杂的版本中,方法2有效,而方法1无效,因此,我试图了解两者之间的区别。但是,当我注释掉引导验证时,方法1确实起作用。

1 个答案:

答案 0 :(得分:1)

$('#formID')将为您提供一个类似于对象的数组,匹配所有DOM元素,而$('#formID')[0]将为您提供该对象中的第一个DOM元素。

  

通过将[0]附加到jQuery对象将返回第一个DOM   元素。

在您的情况下,两个函数都将完美运行,并提交与表单元素相同的DOM元素

您可以在此处阅读更多详细信息:
https://learn.jquery.com/using-jquery-core/faq/how-do-i-pull-a-native-dom-element-from-a-jquery-object/