[jquery] jQuery는 부모 양식 찾기

이 HTML이 있습니다

<ul>
    <li><form action="#" name="formName"></li>
    <li><input type="text" name="someName" /></li>
    <li><input type="text" name="someOtherName" /></li>
    <li><input type="submit" name="submitButton" value="send"></li>
    <li></form></li>
</ul>

input[name="submitButton"]일부인 양식을 어떻게 선택할 수 있습니까? (제출 버튼을 클릭하면 양식을 선택하고 그 안에 일부 필드를 추가하고 싶습니다)



답변

closest가장 가까운 매칭 부모 요소를 선택하는을 사용 하는 것이 좋습니다 .

$('input[name="submitButton"]').closest("form");

이름으로 필터링하는 대신 다음과 같이하십시오.

$('input[type=submit]').closest("form");


답변

모든 입력에 존재하는 양식 참조를 사용할 수 있습니다 .closest()(Chrome 및 IE8에서는 5-10 배 빠름). IE6 & 7에서도 작동합니다.

var input = $('input[type=submit]');
var form = input.length > 0 ? $(input[0].form) : $();


답변

나에게 이것은 가장 간단하고 빠른 것처럼 보입니다.

$('form input[type=submit]').click(function() { // attach the listener to your button
   var yourWantedObjectIsHere = $(this.form);   // use the native JS object with `this`
});


답변

HTML5 브라우저에서 사용할 수 inputElement.form있는 속성 값은 <form>동일한 문서에서 요소 의 id 여야합니다 . MDN에 대한 추가 정보 .


답변

jquery / js 참조 -어떤 제출 버튼을 클릭했는지에 따라 부모 양식을 어떻게 선택합니까?

$('form#myform1').submit(function(e){
     e.preventDefault(); //Prevent the normal submission action
     var form = this;
     // ... Handle form submission
});


답변