我有一个非常基本的问题。 如何通过输入元素id获取表单ID。
<form id="my_form">
<fieldset>
<!--some <div>'s-->
<input id="my_input"></div>
<!--some <div>'s end-->
</fieldset>
</form>
现在,如果我有
var form_input = $('#my_input');
如何获取ID“my_form”?
谢谢。
答案 0 :(得分:20)
使用closest
。它搜索元素的祖先*以找到第一个(最接近的)匹配。
$('#my_input').closest('form').attr('id');
*
注意:nearest()从当前元素开始向上搜索,因此它可以匹配当前元素。
答案 1 :(得分:9)
你甚至不需要jQuery。每个表单元素都有一个.form属性,可以用来直接访问表单对象而无需jQuery的迭代搜索:
$('#my_input').get(0).form.id
答案 2 :(得分:4)
最简单的方法是使用closest()
:
var id = $('#my_input').closest('form').attr('id');