j쿼리 AND 및 OR 연산자를 사용하여 속성별로 선택
저는 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>
나는 모든 요소들을 선택하고 싶다.myc="blue"
단, 을 가진 사람들만myid
1 또는 3으로 설정합니다.
그래서 노력했습니다.
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)를 사용한 단순 사용([계속]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');
});
편집: @Jack Thanks..그것을 완전히 놓쳤습니다.
$('[myc="blue"]').filter(function() {
var myId = $(this).attr('myid');
return (myId == '1' || myId == '3');
});
선택기의 및 연산자는 빈 문자열일 뿐이며, 또는 연산자는 쉼표입니다.
그러나 그룹화 또는 우선 순위가 없으므로 다음 조건 중 하나를 반복해야 합니다.
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' 카테고리의 다른 글
SQL Server 2012.예외: 보호된 메모리(MS.VS)를 읽거나 쓰려고 시도했습니다.OLE.Interop) (0) | 2023.09.01 |
---|---|
위조 방지 기능이 있습니까?ASP의 토큰입니다.NET MVC는 모든 CSRF 공격을 방지합니까? (0) | 2023.09.01 |
아약스의 비동기적 특성을 처리하기 위한 아토믹 자바스크립트 작업이 있습니까? (0) | 2023.09.01 |
유효성 검사를 통해 양식을 여러 구성요소로 분할 (0) | 2023.09.01 |
Swift UI - 목록 행의 여러 버튼 (0) | 2023.09.01 |