이것은 아마도 매우 간단합니다.
thisClass
id가있는 곳을 제외하고 주어진 클래스의 모든 요소를 선택하고 싶습니다 thisId
.
즉,-/ 빼기에서 제거를 의미하는 것과 동등한 것 :
$(".thisClass"-"#thisId").doAction();
답변
: not 선택기를 사용하십시오 .
$(".thisclass:not(#thisid)").doAction();
여러 개의 ID 또는 선택 기가있는 경우 쉼표 구분 기호를 사용하십시오.
(".thisclass:not(#thisid,#thatid)").doAction();
답변
답변
다음 예제와 같이 .not 함수를 사용하여 정확한 id, 특정 단어를 포함하는 id, 단어로 시작하는 id 등을 가진 항목을 제거 할 수 있습니다. http://www.w3schools.com/jquery/jquery_ref_selectors jQuery 선택기에 대한 자세한 내용은 .asp
정확한 ID로 무시 :
$(".thisClass").not('[id="thisId"]').doAction();
“Id”라는 단어가 포함 된 ID는 무시하십시오.
$(".thisClass").not('[id*="Id"]').doAction();
“my”로 시작하는 ID는 무시하십시오.
$(".thisClass").not('[id^="my"]').doAction();
답변
누군가가 그것을 찾고 있다면 JS (ES6) 답변을 던질 것입니다.
Array.from(document.querySelectorAll(".myClass:not(#myId)")).forEach((el,i) => {
doSomething(el);
}
업데이트 (원래 답변을 게시했을 때 가능했을 수도 있지만 지금은 이것을 추가하십시오) :
document.querySelectorAll(".myClass:not(#myId)").forEach((el,i) => {
doSomething(el);
});
이것은 Array.from
사용법을 제거 합니다.
document.querySelectorAll
를 반환합니다 NodeList
. https://developer.mozilla.org/en-US/docs/Web/API/NodeList
에서 반복하는 방법에 대해 자세히 알아 보려면 여기를 읽으십시오.
답변
$(".thisClass[id!='thisId']").doAction();
선택기 관련 문서 : http://api.jquery.com/category/selectors/
답변
.not()
전체 요소를 선택하는 방법을 사용하는 것도 옵션입니다.
해당 요소로 직접 다른 작업을 수행하려는 경우이 방법이 유용 할 수 있습니다.
$(".thisClass").not($("#thisId")[0].doAnotherAction()).doAction();