AND 및 OR 연산자를 사용하여 속성별로 jQuery 선택
jQuery에서 AND 및 OR를 사용하여 명명 된 속성으로 요소를 선택할 수 있는지 생각하고 있습니다.
예:
<div myid="1" myc="blue">1</div>
<div myid="2" myc="blue">2</div>
<div myid="3" myc="blue">3</div>
<div myid="4">4</div>
1 또는 3 myc="blue"
으로 myid
설정된 요소 만있는 모든 요소를 선택하고 싶습니다 .
그래서 나는 시도했다.
a=$('[myc="blue"] [myid="1"] [myid="3"]');
그러나 작동하지 않습니다.
a=$('[myc="blue"] && [myid="1"] || [myid="3"]');
특별한 필터 기능을 작성하지 않고도 가능합니까?
AND 연산
a=$('[myc="blue"][myid="1"][myid="3"]');
OR 연산, 쉼표 사용
a=$('[myc="blue"],[myid="1"],[myid="3"]');
@Vega가 언급했듯이 :
a=$('[myc="blue"][myid="1"],[myc="blue"][myid="3"]');
다중 선택기 [문서] (OR)를 사용하여 .filter()
[문서] (AND)를 간단하게 사용 :
$('[myc="blue"]').filter('[myid="1"],[myid="2"]');
일반적으로 연결 선택자는 a.foo.bar[attr=value]
일종의 AND 선택기와 같습니다.
jQuery에는 지원되는 선택기에 대한 광범위한 문서 가 있으므로 읽어 볼 가치가 있습니다.
아래와 같이 필터를 작성하는 것은 어떻습니까?
$('[myc="blue"]').filter(function () {
return (this.id == '1' || this.id == '3');
});
편집 : @ 잭 감사합니다 .. 완전히 놓쳤습니다 ..
$('[myc="blue"]').filter(function() {
var myId = $(this).attr('myid');
return (myId == '1' || myId == '3');
});
선택기의 and 연산자는 빈 문자열이고 or 연산자는 쉼표입니다.
그러나 그룹화 또는 우선 순위가 없으므로 다음 조건 중 하나를 반복해야합니다.
a=$('[myc=blue][myid="1"],[myc=blue][myid="3"]');
먼저 모든 상황에서 발생하는 조건을 찾은 다음 특수 조건을 필터링합니다.
$('[myc="blue"]')
.filter('[myid="1"],[myid="3"]');
당신의 특별한 경우에는
a=$('[myc="blue"][myid="1"],[myc="blue"][myid="3"]');
JQuery는 CSS 선택기를 사용하여 요소를 선택하므로 다음과 같이 쉼표로 구분하여 둘 이상의 규칙을 사용해야합니다.
a=$('[myc="blue"], [myid="1"], [myid="3"]');
편집하다:
죄송합니다. 파란색과 1 또는 3을 원하셨습니다. 어떻습니까?
a=$('[myc="blue"][myid="1"], [myid="3"]');
두 속성 선택기를 함께 넣으면 AND가 제공되고 쉼표를 사용하면 OR이 제공됩니다.
언급 한 논리 연산을 사용하여 요소를 올바르게 선택하려면 "특수 필터 기능"이 아닌 연산 만 필요 jQuery.filter()
합니다 AND
. 또한 필요 jQuery.add()
에 대한 OR
작업.
var elements = $('[myc="blue"]').filter('[myid="1"').add('[myid="3"');
또는 단일 선택기에서 속기를 사용하여 수행 할 수 있습니다. 여기서 재밍 선택기는 함께 작동 AND
하고 쉼표로 구분하면 OR
다음 과 같이 작동합니다 .
var elements = $('[myc="blue"][myid="1"], [myid="3"]');
참고 URL : https://stackoverflow.com/questions/10687131/jquery-select-by-attribute-using-and-and-or-operators
'Programing' 카테고리의 다른 글
렌더링 중 예외 발생 : 모드 0을 찾을 수 없습니다. (0) | 2020.09.03 |
---|---|
C #에서 참조 유형과 값 유형의 차이점은 무엇입니까? (0) | 2020.09.03 |
함수 매개 변수 목록 내의 중괄호는 es6에서 무엇을합니까? (0) | 2020.09.02 |
Mongodb : 사용하기 전에 알아야 할 사항은 무엇입니까? (0) | 2020.09.02 |
추상 필드가 아닌 이유는 무엇입니까? (0) | 2020.09.02 |