2010-03-08 5 views
1

나는 데 문제가 DIV 세트 내부에 숨겨져있을 수있는 테이블의 JQuery와의 TR 카운트를 잡는 데 내에서 횟수 및 값. 테이블이 포함 DIV 내에액세스 요소는 숨겨진 사업부

<div id="questions" style="display: none;"> 
<table id="tbl_questions"> 
<thead> 
<tr> 
    <th>Question</th> 
    <th>Weight</th> 
</tr> 
</thead> 
<tbody> 
<tr id="q0"> 
    <td id="td_question0">Some Question 0</td> 
    <td id="td_wieght0">Some Weight 0</td> 
</tr> 
<tr id="q1"> 
    <td id="td_question1">Some Question 1</td> 
    <td id="td_wieght1">Some Weight 1</td> 
</tr> 
</tbody> 
</table> 
</div> 

주 : 여기

는 일례이다. 그것은 표시하도록 설정됩니다 : 없음. 이 JQuery 코드를 실행하려고하면 0을 반환합니다.

var question_count = $("#tbl_questions> tr").size(); 
alert(question_count); 

아이디어가 있습니까? 난

그래서 나는 다음 테이블의 각 질문과 체중의 배열을 구축 할 수 있습니다 카운트를 찾아보십시오. ID가 나에게 색인을 제공하기 때문에 이것은 간단해야하지만 그것은 위의 질문과 마찬가지로 문제가 될 숨겨진 DIV에 포함되어 있다는 사실입니까?

감사합니다, Tegan 스나이더

+0

"답변 수락"체크 표시를 클릭하면 시간을내어 질문에 답할 수 있습니다. 대답을 통해 문제가 해결되었다고 언급 한 적이 있지만 지금까지 질문 한 내용 중 25 % 만 해결했습니다. – Pointy

+0

당신은 정확하고 좋은 지적입니다. –

답변

2

시도 :에 관계없이 중첩 깊이, #tbl_questions에서 내려가는 tbody의 후손 행을 선택할 것입니다

var question_count = $("#tbl_questions tbody tr").size(); 

. http://api.jquery.com/descendant-selector/을 참조하십시오.

또한 tbody#tbl_questions직접 아이가, 그리고 질문을 포함하는 tr 년대는 tbody 요소의 직접 자녀로 작동합니다 다음은 :

var question_count = $("#tbl_questions > tbody > tr").size(); 

또한 참조 http://api.jquery.com/child-selector/

2

당신의 선택은 말한다, " 'ID'값 'tbl_questions'인 요소의 직계 자식 모든 TR 요소". 그러한 "tr"요소는 없습니다.

선택기에서 ">"을 제거하고 도움이되는지 확인하십시오. 특정 컨테이너의 아래쪽에있는 요소를 찾고있을 때 ">"가 필요하지 않습니다. 즉, 은 한 수준 아래로 (즉, 직접 하위 항목)입니다.