У меня есть действительно основной вопрос. Как я могу получить идентификатор формы входным идентификатором элемента.
<form id="my_form">
<fieldset>
<!--some <div>'s-->
<input id="my_input"></div>
<!--some <div>'s end-->
</fieldset>
</form>
Теперь, если я имею
var form_input = $('#my_input');
Как я могу получить идентификатор "my_form"?
Спасибо.
Используйте ближайший
. Он ищет предков * элемента, чтобы найти первое (самое близкое) совпадение.
$('#my_input').closest('form').attr('id');
*
Примечание: closest () ищет вверх, начиная с текущего элемента, поэтому может соответствовать текущему элементу.
Для этого вам даже не нужен jQuery. Каждый элемент формы имеет атрибут .form, который можно использовать для прямого доступа к объекту формы без необходимости итеративного поиска jQuery:
$('#my_input').get(0).form.id
Самый простой способ - использовать closest ()
:
var id = $('#my_input').closest('form').attr('id');