2011-11-28 2 views
0

jQuery를 사용하고 있습니다. 1.6.2jQuery를 사용하여 테이블에서 특정 TD를 찾는 방법은 무엇입니까?

jQuery를 약간 수정하는 데 어려움이 있습니다. 특정 셀을 찾고 해당 셀의 색 속성을 변경해야합니다.

첫 번째 행이 내가 원하는 것일 수도 있고 아닐 수도 있습니다. 내가 찾고있는 행에는 수업이있을 수도 있고 없을 수도 있습니다. 첫 번째 행에 "TableSubHead"클래스가 있으면 행의 마지막 셀을 노란색으로 바꾸고 싶지 않습니다. 나는 다음 행으로 넘어 가서 마지막 셀을 노란색으로 돌리고 싶다.

의사에서,이 같은 읽어야합니다 OrderHeaderTable에

봐. TableSubHead 클래스가없는 첫 번째 행을 찾아 마지막 셀을 노란색으로 바꿉니다.

여기

$("#OrderHeaderTable tr:first(:not.TableSubHead").children("td:last").css("background", "yellow"); 

당신이 날 내가 원하는 것을 얻을 그것을 조정할 도와 드릴까요 내 코드입니까?

+0

추가 클래스를 가진' '대신에''태그가 있습니다 (그 중 하나 또는 그 부모가 ''). 이렇게하면 요소를 훨씬 쉽게 선택할 수 있습니다. – Bojangles

답변

5

나는

$("#OrderHeaderTable tr:first(:not.TableSubHead") 

$("#OrderHeaderTable tr:not(.TableSubHead):first") 
+0

당신은 올바르게 믿었습니다. 내가 그런 식으로 읽을 때 그것은 더 이해가됩니다. 감사! –

1

이 사용 해보세요 있어야한다고 생각 :

$('#OrderHeaderTable tbody tr').not('.TableSubHead') 
.first().children('td :last').css('background','yellow'); 
'TableSubHead을하지 않는 OrderHeaderTable의 몸의 첫 번째 tr를 반환해야

'클래스를 선택하고 마지막 셀의 배경을 노란색으로 설정하십시오.

UPDATE는

조금 다시 읽고 질문 후 쿼리를 고정하고 난 당신의 HTML을 볼 수 없습니다, 그래서 이것은 추측이지만, 헤더를 위해 사용한다 .not()

+1

그 큰'filter'는'.not (.TableSubHead)'로 대체 될 수 있습니다. –

+0

감사합니다. 당신이 볼 수 있듯이 James의 대답은 코드가 적고 완벽하게 작동합니다. 너의 것은 꽤 깨끗하고 일을 끝내게된다. –

관련 문제