2011-08-29 6 views
1

내 문서에 여러 개의 중첩 테이블이 있거나 없을 수있는 테이블이 있습니다. 각 테이블 (외부 및 가능한 내부 모두)에는 tbody 태그가 들어 있습니다. 가장 바깥 쪽 tbody 태그와 일치시키고 싶습니다. I는 최 테이블을 선택 JQuery와 선택기가이 경우선택자와 일치하는 가장 바깥 쪽 요소에 추가

<table id="shippingContainer"> 
    <thead> 
    </thead> 
    <tbody> 
     <tr> 
      <td> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <table> 
        <tbody> 
        </tbody> 
       </table> 
      </td> 
     </tr> 
</table> 

: 이하

샘플 문서이다. 해당 테이블과 관련된 tbody 요소를 선택하려고하지만 중첩 테이블 내부의 tbody 요소는 선택하지 않습니다.

$("#shippingContainer").find("tbody"); 

그리고 이것은 분명한 이유 작동하지 않습니다

내 원래의 선택은 간단했다. 도와 주셔서 감사합니다!

답변

5

당신은 그것을 달성하기 위해 child selector를 사용할 수 있습니다

$("#shippingContainer > tbody"); 

이 테이블의 직접적인 아이 년대 <tbody> 요소를 일치합니다.

+0

정말 멋진 그! 나는이 선택기에 대해 몰랐다. 도와 주셔서 감사합니다. – BlackSheep

0

당신은 아래, 아이 선택기를 사용할 수 있습니다 :

이것은 당신의 shippingContainer 테이블의 첫 번째 TBODY 요소를 선택합니다

//This will select the first tbody element (of your main table) 
$("#shippingContainer > tbody") 

이 중첩 된 TBODY 요소를 선택합니다 메인 테이블에서 :

Read more on child selectors here

+0

그건 그게 내가 의미하는 것입니다 - 나는 둘이 똑같아 보이지는 않았다. :) –

+0

일단 내가 좀 더 자세히 읽고 당신의 의도를 실현하면 내 의견을 삭제했습니다. 명확히 해 주셔서 감사합니다. – Dennis

0

find 대신 children을 사용하십시오.

$("#shippingContainer").children("tbody"); 
0

또한이 작업을 수행 할 수 있습니다

$("#shippingContainer").find("tbody").first(); 
관련 문제