JQuery name 선택자 여러개 - jQuery name seontaegja yeoleogae

jquery 의 셀렉터 접근 시에,

아이디나 name 이 유동적일 때, 접근하는 방법

$("input[name='aaa']") =>'aaa' 란 name 접근

$("input[name^='aaa']") =>'aaa' 로 시작하는  name 접근 DB에서 like 'aaa%' 와 동일

$("input[name*='aaa']") =>'aaa' 가 포함된  name 접근 DB에서 like '%aaa%' 와 동일

$("input[name$='aaa']") =>'aaa' 로 끝나는  name 접근 DB에서 like '%aaa' 와 동일

생각보다 유용하다. 여러개의 name을 접근할때 많이 쓰고, 유동적인 ID일 경우 $("input[id^='aaa']") 로 많이 쓴다. ID 뒷부분에 유동적인 key 값을 많이 붙이는 경우가 있어서...

jQuery에는 다양한 셀렉터들이 있다.

이걸 잘 사용하면 쉽게 jQeury 코딩이 가능하다 (Javascript도 사용가능)

이번 포스팅에서는 간단하게 예시로만 설명할것이다.

자세한 내용은 다음 파일을 받아서 보도록 하자

SELECTOR.zip

(파일은 압축을 풀면 SELECTOR 폴더안에 index.html만 키면 모든 내용을 확인할 수 있다)

지금 부터 내가 설명하고자 하는 다중 셀렉터와 해당 속성의 값이 주어진 값으로 시작되면 선택 된다는 ^기호를 사용하는 것을 보여주고자 한다.

만약 다음과 같이 체크박스가 4개가 있다.

<input type="checkbox" name="postData" id="Name1" class="CheckBox"> <input type="checkbox" name="postData" id="Phone1" class="CheckBox"> <input type="checkbox" name="postData" id="Name2" class="CheckBox"> <input type="checkbox" name="postData" id="Phone2" class="CheckBox"> <input type="checkbox" name="postData" id="Name3" class="CheckBoxOther"> <input type="checkbox" name="postData" id="Phone3" class="CheckBoxOther">

이 중에 1) Class가 CheckBox이며,

           2) id가 Name이라는 문자열로 시작하는 input 박스를 체크하기를 원한다.

그렇다면, Jqeury 소스는 다음과 같아진다.

$('input[id^="Name"][class="CheckBox"]').attr('checked', true); 

    Name으로 시작하는 id     CheckBox가 class   

: 두 조건을 모두 만족하는 input tag (다중 셀렉터) 

하면 

<input type="checkbox" name="postData" id="Name1" class="CheckBox"> <input type="checkbox" name="postData" id="Name2" class="CheckBox">

만 체크가 된다.

속성

[name] name속성이 있는 요소를 선택
[name="value"]
[name2="value2"]
name속성의 값이 value이고 name2 속성의 값이 value2 인 요소를 선택
[name="value"] name속성의 값이 value인 요소를 선택
[name!="value"] name속성의 값이 value가 아닌 요소를 선택
[name^="value"] name속성의 값이 value로 시작하는 요소를 선택
[name|="value"] name속성의 값이 value 이거나 value로 시작하는 요소를 선택
[name*="value"] name속성의 값에 value가 들어 있는 요소를 선택
[name~="value"] name속성의 값이 value를 포함하는, 쉼표로 구분된 문자열 요소를 선택
[name$="value"] name속성의 값이 value로 끝나는 요소를 선택

태그

div 태그명이 div인 모든 Element 선택
div p div 요소의 자식 요소중 태그명이 p인 요소 선택
div, p div 요소와 p 요소를 선택
div > p div 요소의 바로아래 자식 요소중 태그명 p인 요소 선택
div + p div의 형제 요소로 바로 다음에 나오는 요소 p인 요소 선택
div ~ p div의 형제 요소로 다음에 나오는 모든 요소 p인 요소 선택
div:has(p) 태그명이 p인 자손을 하나 이상 가지는 div 요소 선택
div.code 클래스명 code를 가지는 모든 div 요소 선택
div#name id가 name인 div 요소 선택
div[A] 속성 A를 가지는 모든 div 요소 선택
div[A=B] 값이 B인 A 속성 값을 가진 div 요소 선택
div[A^=B] 값이 B로 시작하는 값인 A 속성을 가진 div 요소 선택
div[A$=V] 값이 V로 끝나는 값인 A 속성을 가진 div 요소 선택
div[A*=V] 값에 V를 포함하는 값인 A 속성을 가진 div 요소 선택

선택자

:animated 움직이는 요소
:header() <h2>, <h2>, <h3> 등 제목 요소
:input input, textarea 모든 입력 컨트롤
:text <input type="text">
:button <input type="button">
:radio <input type="radio">
:checkbox <input type="checkbox">
:password <input type="password">
:file <input type="file">
:hidden <input type="hidden">
:image <imput type="image">
:submit <input type="submit">
:reset <input type="reset">
:selected <select>의 <option selected>
:checked <input type="checkbox"> <input type="radio">의 체크된 요소
:contains() 해당 인자를 가지고 있는 요소

$('div:contains("text")');
▶ div 요소중 "text"를 포함한 요소

:visible 눈에 보이는 요소
:enabled 활성화된 요소
:disabled 비활성화된 요소
:empty 해당 요소가 비어있는 요소(text도 포함)
:odd 홀수 요소
:even 짝수 요소
:parent 부모요소
:parents 부모요소중에
:first 첫번째 요소
:first-child 첫번째 자식요소
:last 마지막 요소
:last-child 마지막 자식요소
:nth-child() 자식 요소 집합에서 인자의 위치한 자식

$('li:nth-child(1)')
▶ <li>의 첫번째 자식요소를 찾는다. (index:1, 2, 3)

:eq() 인자의 순번에 있는 요소

$('td:eq(2)");
▶ td 집합중 세번째 요소를 선택 (index:0, 1, 2)

:only-child 형제가 없는 요소
:gt() 인자보다 큰 요소

$(":gt(index)");
▶ index 값보다 큰 요소

:lt() 인자보다 작은 요소 선택

$(":lt(index)");
▶ index 값보다 작은 요소
:has() 인자요소를 가지고 있는 요소

$('div:has(p)');
▶ p를 자식으로 가지고 있는 div를 선택

:not() 인자의 조건이 아닌 요소

$(':not(div)');
▶ div 가 아닌 요소를 선택

:focus focus 상태 요소 선택

Toplist

최신 우편물

태그