j

jQuery Selector - 속성 Attribute

· 12년 전 · 2029

개체의 속성값을 통해 요소를 선택하자 - Attribute Selector

각각의 요소는 속성(attribute)을 가질 수 있습니다. 각 요소의 속성은 미리 정해진 이름이거나, 사용자의 필요에 의해서 만들어질 수 있으며 jQuery의 CSS 셀렉터와 필터의 조합으로 통해 관련된 요소에 접근 할 수 있습니다.
다음은 jQuery에서 지원하고 있는 속성관련 셀렉터 입니다. (더 많은 종류의 속성관련 셀렉터를 지원하고 있으니 자세한 내용은 jQuery.com에서 확인을 하시기 바랍니다.)

 

형식(셀렉터)

설명

$(Selector[attr])

attr 속성(attribute)값을 가지는 Selector 요소와 일치

$(Selector[attr=”value”])

attr 속성의 값이 value와 동일한 값인 Selector 요소와 일치

$(Selector[attr!=”value”])

attr 속성의 값이 value와 같지 않은 값인 Selector 요소와 일치

$(Selector[attr^=”value”])

attr 속성의 값이 value 값으로 시작하는 Selector 요소와 일치

$(Selector[attr$=”value”])

attr 속성의 값이 value 값으로 끝나는 Selector 요소와 일치

$(Selector[attr*=”value”]) attr 속성의 값이 value 값을 포함하는 Selector 요소와 일치
$(Selector[attr~=”value”]) attr 속성의 값이 공백과 함께 value 값을 포함하는 Selector 요소와 일치

 

 

Has Attribute Selector : $(Selector[attr])
attr이라는 속성(Attribute)값을 가지는 셀렉터의 요소와 일치하는 요소를 반환합니다.
input, checkbox, src, href등 “<”, “>” 사이에 정의된(사용자가 임의로 정의한 값 포함) 값에 대해 일치하는 항목이 존재 한다면 해당 요소를 반환합니다.

다음은 “a” 태그의 속성 “target”이 존재하는 요소를 선택하는 예제입니다. 

<html xmlns="http://www.w3.org/1999/xhtml"><head>    <title>jQuery Selector</title>    <link href="../Styles/Site.css" rel="stylesheet" type="text/css" />        <style>        div { background : #FFF; padding:10px; margin:10px; }    </style>    <script src="http://code.jquery.com/jquery-latest.js"></script>    <script type="text/javascript">        $(document).ready(function () {            $("div > a[target]").css("background", "#CCC");        });    </script></head><body style="padding:10px;">    <h2>jQuery 시작 Selector</h2>    <p>jQuery에 대한 자세한 내용을 보려면 jquery.com 을 방문하세요.</p>    <div>        <a href="http://www.slqer.com">SQLER.COM (No Target)</a><br />        <a href="http://www.slqer.com" target="_blank">SQLER.COM (Target)</a><br />        <a href="http://www.hoons.kr">Hoons.NET (No Target)</a><br />        <a href="http://www.hoons.kr" target="_blank">Hoons.NET (Target)</a><br />        <a href="http://www.hows.kr">HowsNET (No Target)</a><br />        <a href="http://www.hows.kr" target="_blank">HowsNET (No Target)</a><br />    </div></body></html>

 

04_001.jpg

 

 

 

Attribute Equals Selector : $(Selector[attr=”value”])
셀렉터의 요소중 attr 과 value의 값이 동일한 요소를 찾아 반환합니다.
다음 예제는 HTML 문서에 존재하는 링크중에 http://www.sqler.com인 요소를 찾아 표시 합니다.

 

<html xmlns="http://www.w3.org/1999/xhtml"><head>    <title>jQuery Selector</title>    <link href="../Styles/Site.css" rel="stylesheet" type="text/css" />        <style>        div { background : #FFF; padding:10px; margin:10px; }    </style>    <script src="http://code.jquery.com/jquery-latest.js"></script>    <script type="text/javascript">        $(document).ready(function () {            $("div > a[href='http://www.sqler.com']").css("background", "#CCC");        });    </script></head><body style="padding:10px;">    <h2>jQuery 시작 Selector</h2>    <p>jQuery에 대한 자세한 내용을 보려면 jquery.com 을 방문하세요.</p>                <div>        <p>            다음 링크중에 href 값이 "http://www.sqler.com"인 요소를 표시합니다.        </p>        <a href="http://www.sqler.com">SQLER.COM (No Target)</a><br />        <a href="http://www.sqler.com" target="_blank">SQLER.COM (Target)</a><br />        <a href="http://www.hoons.kr">Hoons.NET (No Target)</a><br />        <a href="http://www.hoons.kr" target="_blank">Hoons.NET (Target)</a><br />        <a href="http://www.hows.kr">HowsNET (No Target)</a><br />        <a href="http://www.hows.kr" target="_blank">HowsNET (No Target)</a><br />    </div></body></html>

04_002.jpg

 

 

 

Attribute Not Equals Selector : $(Selector[attr!=”value”])
바로 앞에서 설명한 셀렉터와는 반대로 이번 셀렉터는 요소중 attr의 값이 value가 아닌 요소를 찾아 반환합니다. 앞의 예제를 활용하여 간단히 알아 보도록 하겠습니다.
앞에서 설명한 예제 코드에서 다음 부분만 변경을 해 보겠습니다.

 

<script type="text/javascript">        $(document).ready(function () {            $("div > a[href='http://www.sqler.com']").css("background", "#DDD");        });</script>[변경전]<script type="text/javascript">        $(document).ready(function () {            $("div > a[href!='http://www.sqler.com']").css("background", "#CCC");        });</script>[변경후]


04_003.jpg 

 

 

 

Attribute Starts With Selector : $(Selector[attr^=”value”])
지정된 속성의 값으로 시작되는 요소와 일치하는 요소를 찾아 반환합니다.
일정한 패턴으로 정의된 속성이 있을경우 해당 셀렉터를 사용하면 매우 유용합니다. 다음 예제를 통해 간단히 알아 보도록 하겠습니다.

  

<html xmlns="http://www.w3.org/1999/xhtml"><head>    <title>jQuery Selector</title>    <link href="../Styles/Site.css" rel="stylesheet" type="text/css" />        <style>        div { background : #FFF; padding:10px; margin:10px; }    </style>    <script src="http://code.jquery.com/jquery-latest.js"></script>    <script type="text/javascript">        $(document).ready(function () {            $("div[id^='content-']").css("background", "#CCC");        });    </script></head><body style="padding:10px;">    <h2>jQuery 시작 Selector</h2>    <p>jQuery에 대한 자세한 내용을 보려면 jquery.com 을 방문하세요.</p>    <div>        <p>            "id"가 "content"로 시작하는 요소를 표시합니다.        </p>        <div id="content-1">DIV Content-1</div>        <div id="content-2">DIV Content-2</div>        <div id="view-1">DIV View-1</div>        <div id="content-3">DIV Content-3</div>            </div></body></html>

 

04_004.jpg 

 

 

 

Attribute Ends With Selector : $(Selector[attr$=”value”])
지정된 속성의 값으로 끝나는 요소와 일치하는 요소를 찾아 반환합니다.
앞에서 설명한 예제 코드에서 다음 부분만 변경을 해 보겠습니다. 

$("div[id$='1']").css("background", "#CCC");

04_005.jpg  

 

 

 

Attribute Contains Selector : $(Selector[attr*=”value”])
지정된 속성의 값이 포함된 요소와 일치하는 요소를 찾아 반환합니다. 

<html xmlns="http://www.w3.org/1999/xhtml"><head>    <title>jQuery Selector</title>    <link href="../Styles/Site.css" rel="stylesheet" type="text/css" />        <style>        div { background : #FFF; padding:10px; margin:10px; }    </style>    <script src="http://code.jquery.com/jquery-latest.js"></script>    <script type="text/javascript">        $(document).ready(function () {            $("input[name*='man']").css("background", "yellow");        });    </script></head><body style="padding:10px;">    <h2>jQuery 시작 Selector</h2>    <p>jQuery에 대한 자세한 내용을 보려면 jquery.com 을 방문하세요.</p>    <div>        <p>"name"값에 man이 포함된 요소를 표시합니다.</p>        <input name="man" value="name is man" /><br />        <input name="superman" value="name is superman" /><br />        <input name="iron man" value="name is iron man" /><br />        <input name="bat man" value="name is bat man" /><br />        <input name="joker" value="name is joker"/><br />        <input name="manual" value="name is manual"/><br />            </div></body></html>


04_006.jpg 

 

Name 값의 문자열에 “man”과 일치하는 항목이 있으면 무조건 해당 요소를 선택하며, 마지막 항목 “manual”도(man이 포함된 문자열도 일치하는 항목으로 선택) 함께 선택된 모습을 확인 할 수 있습니다.

 

 

Attribute Contains Word Selector : $(Selector[attr~=”value”])
지정된 속성의 값이 공백과 함께 일치하는 요소를 찾아 반환합니다.
$(input[name*=”man”])의 경우 “man, superman, iron man, manual”… 에 대한 모든 항목에 대해 일치하지만 $(input[name~=”man”])의 경우 “man”과 정확히 일치하는 요소만 반환합니다. 앞의 셀렉터는 문자에 대해서 일치하는 항목을 찾았다면, 두번째의 경우는 단어의 단위로 일치하는 요소를 찾아 반환을 합니다.
앞에서 설명한 예제 코드에서 $(input[name*=”man”]) 부분을 $(input[name~=”man”])로 변경 후의 결과를 보면 다음과 같습니다.


04_007.jpg

 

앞의 결과와는 전혀 다르게 요소가 선택된 결과를 보이며, “man”이란 단어 단위로 정확하게 일치하는 요소에 대해서만 선택된 모습을 확인 할 수 있습니다. 성값을 이용한 요소의 선택은 기본 셀렉터를 이용하는 것 보다는 느리나, 보다 정확하게 원하는 요소에 접근 할 수 있다는 장점이 있습니다.

 

속성값을 이용하여 요소를 선택하기 앞서 클래스나 DOM을 이용한 요소의 선택 방법이 있다면 해당 방법을 사용 하길 권해드립니다.

|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
12년 전 조회 1,817
12년 전 조회 6,797
12년 전 조회 2,629
12년 전 조회 846
12년 전 조회 796
12년 전 조회 1,546
12년 전 조회 2,206
12년 전 조회 1,018
12년 전 조회 838
12년 전 조회 1,470
12년 전 조회 1,605
12년 전 조회 839
12년 전 조회 1,261
12년 전 조회 1,540
12년 전 조회 927
12년 전 조회 1,219
12년 전 조회 3,795
12년 전 조회 1,563
12년 전 조회 1,091
12년 전 조회 981
12년 전 조회 1,356
12년 전 조회 1,596
12년 전 조회 4,380
12년 전 조회 5,711
12년 전 조회 833
12년 전 조회 2,408
12년 전 조회 6,873
12년 전 조회 2,536
12년 전 조회 9,471
12년 전 조회 671
12년 전 조회 862
12년 전 조회 1,489
12년 전 조회 1,804
12년 전 조회 1,465
12년 전 조회 2,069
12년 전 조회 2,477
12년 전 조회 3,346
12년 전 조회 2,313
12년 전 조회 2,482
12년 전 조회 2,453
12년 전 조회 1,735
12년 전 조회 1,538
12년 전 조회 1,183
12년 전 조회 1,364
12년 전 조회 2,163
12년 전 조회 1,714
12년 전 조회 1,409
12년 전 조회 2,438
12년 전 조회 2,186
12년 전 조회 2,030
12년 전 조회 1,769
12년 전 조회 2,454
12년 전 조회 1,266
12년 전 조회 924
12년 전 조회 534
12년 전 조회 677
12년 전 조회 1,193
12년 전 조회 2,617
12년 전 조회 2,619
12년 전 조회 1,691
12년 전 조회 1,319
12년 전 조회 1,105
12년 전 조회 9,234
12년 전 조회 739
12년 전 조회 1,697
12년 전 조회 1,295
12년 전 조회 1,737
12년 전 조회 1,944
12년 전 조회 1,130
12년 전 조회 1,707
12년 전 조회 2,361
12년 전 조회 1,481
12년 전 조회 1,421
12년 전 조회 1,324
12년 전 조회 7,567
12년 전 조회 1,455
12년 전 조회 1,320
12년 전 조회 2,104
12년 전 조회 1,096
12년 전 조회 1,623
12년 전 조회 1,232
12년 전 조회 1,188
12년 전 조회 2,957
12년 전 조회 1.1만
12년 전 조회 3,127
12년 전 조회 2,978
12년 전 조회 1,512
12년 전 조회 2,864
12년 전 조회 952
12년 전 조회 1,868
12년 전 조회 1,279
12년 전 조회 1,598
12년 전 조회 1,329
12년 전 조회 1,628
12년 전 조회 3,746
12년 전 조회 2,006
12년 전 조회 1,052
12년 전 조회 5,367
12년 전 조회 1,338
12년 전 조회 1,329
🐛 버그신고