2011-08-23 3 views
0

라디오 버튼이있는 테이블이 있습니다. radiobutton을 클릭하면, 두 개의 sorrounding 컨테이너 ID 속성 (div와 테이블)을 업데이트하려고합니다. 문제는, 내가 4,6 레벨 위로 이동해야하며,이 작업을 수행하는 방법을 알고있는 유일한 방법은 parent(). parent(). parent() 등입니다. 더 나은 솔루션을 찾고 있습니다. , 누군가가 올바른 방향으로 나를 가리킬 수 있기를 바랬습니다. 나는 이미는 clickHandler 등 사용자가 설정 한주변 div/parent의 속성을 효과적으로 변경하는 방법은 무엇입니까?

http://imageshack.us/photo/my-images/834/imgkz.png/

: 당신은 "부모 - 자식"나무가 여기에 얼마나의 이미지를 볼 수 있습니다.

기본적으로 테이블의 id 속성이 "answeredTable"인지 확인해야합니다. 변경하지 않으면됩니다. 또한 테이블에서 div 두 수준 위로 "대답"있는지 확인해야합니다, 그렇지 않으면, 나는 너무 그것을 변경해야합니다.

감사

당신은 DOM의 여러 단계를 통해 이동 .parents()를 사용할 필요가
+0

당신이 그것을에 볼 수있는 DOM을 갈 것 .parents

$("element").parent(".parentClass") 

parents을 사용할 수 있습니다 당신이 사용하고자하는 가장 가까운 생각 내가 제공 한 링크 – Nanek

답변

2

것이어야한다. .parent()를 사용

은이 요소를 찾을 때까지 .parents()는 DOM의 전체 parentset을 반환하고 요소를 일치하는 동안, DOM 트리와 일치를 걸어 할 수 .closest()을 선택, DOM 트리에 최초의 부모 요소를 선택 부모 전체에서.

1

예를 들어, 귀하의 예제에서,이 코드를 사용하여 주변 div 얻을 수 :

$("#Q_18_2015").parents("div#answered") 

을 그건 그렇고, id는 고유 한이어야합니다. 그렇지 않으면 코드가 작동하지 않을 수 있습니다. 대신 클래스를 사용해야합니다.

<div class="answered"> 

따라서, 코드가 될 것이다 :

$("#Q_18_2015").parents("div.answered") 

Q_18_2015 당신은 .closest('#answeredTable') 또는 .parents('#answeredTable')을 사용할 수 있습니다 정말 고유 ID

0

당신이 parentClass

관련 문제