development/script

jQuery 셀렉터 특정 문자열로 시작하는 요소 찾기

알 수 없는 사용자 2018. 3. 9. 13:59
반응형

jQuery selector [name^=”value”]는 특정 문자열을 시작하는 요소들을 찾습니다.


예제)

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>attributeStartsWith demo</title>
  <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
 
<input name="newsletter">
<input name="milkman">
<input name="newsboy">
 
<script>
$( "input[name^='news']" ).val( "news here!" );
</script>
 
</body>
</html>

적용 모습)

attributeStartsWith demo

 


설명)

프로젝트를 하다보면 흔하게 쓰는 경우인데, 주로 같은 input 박스에서 같은 그룹핑 이름들을 일괄로 찾아 처리를 할 때 사용을 하곤 합니다.

예를들면 전화번호 같은 경우 input box를 3개를 둔다고 하고 이름이 각각 tel1, tel2, tel3이라면 한꺼번에 3개 이름을 지정하지 않고도

name^=tel 이렇게 앞에 공통 접두사만 지정하면 tel로 시작하는 이름의 컨포넌트를 일괄로 찾아서 처리할 수 있지요.


위의 예제 같은 경우 input box가 3개이며 각각 newsletter, milkman, newsboy라고 되어 있는데

자바스크립트에서 $( "input[name^='news']" )로 하여 news로 시작하는 input 태그 요소를 찾아 value 값에 "news here!"라는 문자열을 지정하였습니다.

newsletter와 newsboy가 해당되므로 1, 3번째가 해당 되었습니다.

반응형