모든 하위 요소에 대한 CLASS 제거


79

다음 HTML이 주어지면 :

<div id="table-filters">
    <ul>
        <li class="active">blah</li>
        <li>blah</li>
        <li>blah</li>
        <li>blah</li>
    </ul>
</div>

테이블 필터를 jQuery 선택기로 사용하면 CLASS=ACTIVE어떤 요소가 LI켜져 있든 관계없이 .

감사

답변:


131

이것은 작동합니다.

$("#table-filters>ul>li.active").removeClass("active");
//Find all `li`s with class `active`, children of `ul`s, children of `table-filters`

1
위의 솔루션은 크롬에서 작동하지 않습니다. 그래서 방금 $ ( "# table-filters> li.active"). removeClass ( "active");로 변경했습니다. Tq.
chandoo

37

다음과 같이 할 수도 있습니다.

  $("#table-filters li").parent().find('li').removeClass("active");

2
가능하지만 jQuery를 처리하기가 훨씬 더 어렵 기 때문에 빠른 응답을 믿고 있다면 위의 방법을 사용해야합니다. 또한 모든 'li'를 선택한 다음 부모가 'li'를 찾은 다음 활성 클래스를 제거하는 이유는 무엇입니까? 비트 비생산적인 ..
Warre Buysse

위에서 언급했듯이 이것은 또 다른 방법입니다.
insomiac

이것은 선택기 자체가 너무 광범위하고 단일 parent요소 의 하위로 제한하려는 경우에 유용합니다 .
Jason
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.