2010-08-09 8 views
1

javascript 및 jquery를 사용하여 새로 고치지 않고 테이블에 행을 추가하는 애플리케이션을 코딩하고 있습니다. 테이블에 추가하려면 현재 테이블에있는 행 수를 계산해야합니다. 이 코드를 사용하고 있습니다 ...jQuery - IE7에서 작동하지 않는 테이블 행 계산

var count = $('#columns tr.FIELD').length; 

코드는 Firefox와 Chrome에서 잘 작동하지만 IE7을 중심으로 구축해야합니다. 이 선택기가 다른 브라우저에서 잘 작동하는 동안 Internet Explorer에서 0을 반환하는 이유가 있습니까?

감사합니다.

+0

내가 (작은, [작업 예]를 쓰기로 결정이 질문을 다시 방문 후 http://jsfiddle.net/ sHH2n /)를 사용하여 동일한 셀렉터를 사용하십시오. 문제를 제대로 식별 할 수 있도록 html 마크 업을 게시해야 할 수도 있습니다. –

답변

3

IE7이 테이블에 숨겨진 tbody 태그를 삽입하고있어 셀러가 틀렸다고 생각합니다.

, 당신의 테이블을 의미 올바른지 확인 더 적절

$('#columns').find('tr.FIELD').length을 시도

<table> 
<thead>[HEADER ROW]</thead> 
<tbody>[CONTENT]</tbody> 
</table> 
+0

+1 - 내 인생을 단순화하기 위해 IE에서 일관되게 유지하기 위해 테이블에 tbody 태그를 사용합니다. :) –

+0

이 비트 나를 처음 잘못된 테이블을 작성하고 IE에서 구문 분석해야합니다. 필자는 테이블을 동적으로 구축하여 자동 테이블 생성 : P와 함께 모든 종류의 두통을 일으켰습니다. –

+0

IE는 TBODY 요소를 삽입하는 유일한 브라우저가 아닙니다. ** ** Firefox와 Chrome을 포함한 모든 주요 브라우저가 동일한 작업을 수행합니다. 콘솔에서 직접 시도해보십시오 -'var d = document.createElement ("div"); d.innerHTML = "

"; 알림 (d.innerHTML); 또한 OP 질문에 '>'선택자가 없기 때문에 TBODY 요소를 사용하더라도 모든 TR이 반환됩니다 (OP는 IE7이 0 행을 반환한다고 명시 함). –

관련 문제