특정 요소를 쿼리하고 싶습니다. 코드Angularjs 각도기 : 유효한 중첩 요소를 제외하기위한 선택자
내 구조는 다음과 같습니다 :
HTML 나는 '주 class but not for
리튬의 which are inside
에-exclude` 클래스 내부 li's
존재를 테스트 할
<ul class="main">
<li>...</li>
<li>...</li>
<li>
<ul class="to--exclude">
<li>...</li>
<li>...</li>
</ul>
</li>
<li>...</li>
...
</ul>
.
내가 element(by.css('.main li'))
을 사용하면 to-exclude
클래스 안에있는 것들을 포함하여 모든 li's
을 찾습니다.
:not
또는 .not()
. $('.main li').not('ul.to--exclude li')
// OR
$(".main li:not('ul.to-exclude li')");
하는
element(by.css('.main li').not('ul.to--exclude li'));
// OR
element(by.css(".main li:not('ul.to--exclude li')"));
상기 코드로서 끄는에서 사용하는 동안 오류를 범 : 각도기 동일한 수행하는 방법
InvalidElementStateError: invalid element state: Failed to execute 'querySelectorAll' on 'Document': '.main li:not('ul.to--exclude li')' is not a valid selector.
. 부모 로케이터 클래스 내에 중첩 된 일부 클래스를 제외하는 방법.
감사
jQuery를': 당신이
.to--include
같은 다른ul
의가없는 경우당신의 선택을 줄일 수 ': not()'- [내 jQuery : not() selector가 CSS에서 작동하지 않는 이유는 무엇입니까?] (http://stackoverflow.com/questions/10711730/why-is-my-jquery-not-selector-not -working-in-css) – BoltClock
또한 HTML이 유효하지 않으므로 'ul'내에 직접 'ul'을 가질 수는 없습니다. 목록을 중첩 시키려면'li' 내에'ul'이 있어야합니다. – BoltClock