개체의 속성값을 통해 요소를 선택하자 - 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>

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>

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>[변경후]
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>
Attribute Ends With Selector : $(Selector[attr$=”value”])
지정된 속성의 값으로 끝나는 요소와 일치하는 요소를 찾아 반환합니다.
앞에서 설명한 예제 코드에서 다음 부분만 변경을 해 보겠습니다.
$("div[id$='1']").css("background", "#CCC");
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>
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”])로 변경 후의 결과를 보면 다음과 같습니다.
앞의 결과와는 전혀 다르게 요소가 선택된 결과를 보이며, “man”이란 단어 단위로 정확하게 일치하는 요소에 대해서만 선택된 모습을 확인 할 수 있습니다. 성값을 이용한 요소의 선택은 기본 셀렉터를 이용하는 것 보다는 느리나, 보다 정확하게 원하는 요소에 접근 할 수 있다는 장점이 있습니다.
속성값을 이용하여 요소를 선택하기 앞서 클래스나 DOM을 이용한 요소의 선택 방법이 있다면 해당 방법을 사용 하길 권해드립니다.
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 6430 | 12년 전 | 963 | ||
| 6429 | 12년 전 | 9095 | ||
| 6428 | 12년 전 | 591 | ||
| 6427 |
제이티37
|
12년 전 | 1564 | |
| 6426 |
프로프리랜서
|
12년 전 | 1144 | |
| 6425 |
프로프리랜서
|
12년 전 | 1603 | |
| 6424 |
프로프리랜서
|
12년 전 | 1803 | |
| 6423 | 12년 전 | 997 | ||
| 6422 |
퍼블리셔지노군
|
12년 전 | 1567 | |
| 6421 | 12년 전 | 2204 | ||
| 6420 |
|
12년 전 | 1333 | |
| 6419 |
|
12년 전 | 1283 | |
| 6418 | 12년 전 | 1180 | ||
| 6417 |
senseme
|
12년 전 | 7416 | |
| 6416 |
senseme
|
12년 전 | 1320 | |
| 6415 |
senseme
|
12년 전 | 1184 | |
| 6414 |
senseme
|
12년 전 | 1959 | |
| 6413 |
senseme
|
12년 전 | 958 | |
| 6412 |
senseme
|
12년 전 | 1481 | |
| 6411 |
senseme
|
12년 전 | 1087 | |
| 6410 |
senseme
|
12년 전 | 1038 | |
| 6409 |
PASKRAN
|
12년 전 | 2812 | |
| 6408 | 12년 전 | 10795 | ||
| 6407 | 12년 전 | 2987 | ||
| 6406 |
프로프리랜서
|
12년 전 | 2824 | |
| 6405 |
프로프리랜서
|
12년 전 | 1364 | |
| 6404 |
프로프리랜서
|
12년 전 | 2720 | |
| 6403 |
프로프리랜서
|
12년 전 | 815 | |
| 6402 |
프로프리랜서
|
12년 전 | 1720 | |
| 6401 |
프로프리랜서
|
12년 전 | 1138 | |
| 6400 |
프로프리랜서
|
12년 전 | 1457 | |
| 6399 |
프로프리랜서
|
12년 전 | 1179 | |
| 6398 |
프로프리랜서
|
12년 전 | 1478 | |
| 6397 |
프로프리랜서
|
12년 전 | 3596 | |
| 6396 | 12년 전 | 1865 | ||
| 6395 | 12년 전 | 914 | ||
| 6394 |
|
12년 전 | 5236 | |
| 6393 |
제이티37
|
12년 전 | 1195 | |
| 6392 |
songsinica
|
12년 전 | 1190 | |
| 6391 |
|
12년 전 | 3364 | |
| 6390 |
|
12년 전 | 1617 | |
| 6389 | 12년 전 | 4853 | ||
| 6388 |
스누피사랑
|
12년 전 | 5429 | |
| 6387 | 12년 전 | 1836 | ||
| 6386 | 12년 전 | 3049 | ||
| 6385 |
희망과열정
|
12년 전 | 922 | |
| 6384 | 12년 전 | 3284 | ||
| 6383 | 12년 전 | 10590 | ||
| 6382 |
|
12년 전 | 5783 | |
| 6381 |
SugarSkull
|
12년 전 | 1021 | |
| 6380 | 12년 전 | 771 | ||
| 6379 |
|
12년 전 | 1974 | |
| 6378 | 12년 전 | 1553 | ||
| 6377 | 12년 전 | 490 | ||
| 6376 |
후라보노보노
|
12년 전 | 1329 | |
| 6375 | 12년 전 | 2860 | ||
| 6374 | 12년 전 | 825 | ||
| 6373 | 12년 전 | 2366 | ||
| 6372 |
takumi22
|
12년 전 | 1237 | |
| 6371 |
개초보제이
|
12년 전 | 770 | |
| 6370 |
고급자가되고
|
12년 전 | 1454 | |
| 6369 | 12년 전 | 875 | ||
| 6368 | 12년 전 | 3175 | ||
| 6367 | 12년 전 | 1870 | ||
| 6366 | 12년 전 | 2872 | ||
| 6365 |
lilyosia
|
12년 전 | 1788 | |
| 6364 | 12년 전 | 1051 | ||
| 6363 | 12년 전 | 1582 | ||
| 6362 | 12년 전 | 2728 | ||
| 6361 | 12년 전 | 2552 | ||
| 6360 | 12년 전 | 998 | ||
| 6359 | 12년 전 | 2100 | ||
| 6358 |
|
12년 전 | 1784 | |
| 6357 |
에헤라디야자진방아를돌려라
|
12년 전 | 775 | |
| 6356 | 12년 전 | 2072 | ||
| 6355 | 12년 전 | 3780 | ||
| 6354 | 12년 전 | 3087 | ||
| 6353 | 12년 전 | 1542 | ||
| 6352 | 12년 전 | 7768 | ||
| 6351 | 12년 전 | 2531 | ||
| 6350 | 12년 전 | 2792 | ||
| 6349 | 12년 전 | 1870 | ||
| 6348 | 12년 전 | 3541 | ||
| 6347 | 12년 전 | 1443 | ||
| 6346 | 12년 전 | 1178 | ||
| 6345 | 12년 전 | 1832 | ||
| 6344 | 12년 전 | 1404 | ||
| 6343 |
프로프리랜서
|
12년 전 | 2058 | |
| 6342 |
프로프리랜서
|
12년 전 | 1373 | |
| 6341 |
프로프리랜서
|
12년 전 | 1810 | |
| 6340 |
프로프리랜서
|
12년 전 | 1890 | |
| 6339 |
프로프리랜서
|
12년 전 | 1328 | |
| 6338 |
프로프리랜서
|
12년 전 | 1565 | |
| 6337 | 12년 전 | 5252 | ||
| 6336 |
프로프리랜서
|
12년 전 | 1624 | |
| 6335 |
프로프리랜서
|
12년 전 | 947 | |
| 6334 |
프로프리랜서
|
12년 전 | 1321 | |
| 6333 |
프로프리랜서
|
12년 전 | 2437 | |
| 6332 | 12년 전 | 1095 | ||
| 6331 |
돗단배123
|
12년 전 | 1415 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기