[JQUERY] jQuery를 아이디 선택은 첫 번째 요소에 대해서만 작동합니다
JQUERYjQuery를 아이디 선택은 첫 번째 요소에 대해서만 작동합니다
해결법
-
1.당신은 당신이 동일한 ID를 가진 페이지에 두 개 이상의 요소를 가질 수 없습니다, 잘못된 HTML이있다.
당신은 당신이 동일한 ID를 가진 페이지에 두 개 이상의 요소를 가질 수 없습니다, 잘못된 HTML이있다.
사양을 인용 :
해결 방법 : ID와 클래스로 변경
<button type="button" class="btn btn-primary xyz" value="1">XYZ1</button> <button type="button" class="btn btn-primary xyz" value="2">XYZ2</button> <button type="button" class="btn btn-primary xyz" value="3">XYZ3</button>
그리고 jQuery 코드 :
$(".xyz").click(function(){ alert(this.value); // No need for jQuery :$(this).val() to get the value of the input. });
jQuery를이 선택 문서를 #ID :
당신이 jQuery를 소스를 보면 당신은 id를 선택기로 $를 호출 할 때 볼 수 있습니다 - ($는 ( "# ID가")), JQuery와 document.getElementById를 기능 기본 자바 스크립트를 호출
// HANDLE: $("#id") } else { elem = document.getElementById( match[2] ); }
비록, document.getElementById를의 사양에 그들은이 (아마도 모든?) 대부분의 브라우저가 그것을 구현하는 방법, 그것은 첫 번째 값을 반환해야합니다 언급하지 않았다.
데모
-
2.ID 수단 "식별자"를 한 번만 문서 당 유효합니다. 당신의 HTML이 시점에서 잘못이기 때문에, 일부 브라우저는 ID와 마지막 발생하는 요소, 제 일부 선택하십시오.
ID 수단 "식별자"를 한 번만 문서 당 유효합니다. 당신의 HTML이 시점에서 잘못이기 때문에, 일부 브라우저는 ID와 마지막 발생하는 요소, 제 일부 선택하십시오.
이름 변경 ID는 좋은 단계가 될 것입니다.
그런 다음 (버튼 [이름 = "XYZ를"] ') $를 사용합니다. () {(기능을 클릭
-
3.당신이 $ ( '버튼을 # XYZ') 선택기를 사용하는 경우 내 경험에서, 대신 작동합니다. 그건 해킹,하지만 여전히 잘못된 HTML입니다.
당신이 $ ( '버튼을 # XYZ') 선택기를 사용하는 경우 내 경험에서, 대신 작동합니다. 그건 해킹,하지만 여전히 잘못된 HTML입니다.
-
4.당신은 같은 ID로 여러 요소가있는 경우이 또한 일했다.
당신은 같은 ID로 여러 요소가있는 경우이 또한 일했다.
$("button#xyz").click(function(){ var xyz = $(this).val(); alert(xyz); });
당신은 여기에서 확인하실 수 있습니다
-
5.ID를 변경하는 클래스가 낫다에 비록, 당신은 속성을 사용하여 동일한 ID가 선택을 동일 모든 요소를 얻을 수 있습니다 :
ID를 변경하는 클래스가 낫다에 비록, 당신은 속성을 사용하여 동일한 ID가 선택을 동일 모든 요소를 얻을 수 있습니다 :
$('[id="xyz"]')
또는이 아이디 XYZ 만 버튼을 얻을 수 있습니다 :
$('button[id="xyz"]')
아이디 XYZ 또는 div의 :
$('div[id="xyz"]')
기타
또는 당신이 사용할 수있는 "XYZ"를 포함 ID를 가진 모든 요소를 얻기 위해 "속성은 선택기를 포함"
$('[id*="xyz"]')
물론,이 방법 부분적으로 "XYZ"를 포함하는 것을 ID로 모든 요소는이 선택한 얻을 것이다.
-
6.ID가 페이지의 HTML에서 고유하므로 동일한 ID를 가질 수 없습니다. 클래스 또는 다른 속성 이름으로 변경합니다.
ID가 페이지의 HTML에서 고유하므로 동일한 ID를 가질 수 없습니다. 클래스 또는 다른 속성 이름으로 변경합니다.
$('attributename').click(function(){ alert($(this).attr(attributename))});
-
7.당신이 용기에 동일한 ID가 있다면 당신은 모든 이벤트에 대한 각 요소에 액세스 할 수 ()에 사용할 수 있습니다
당신이 용기에 동일한 ID가 있다면 당신은 모든 이벤트에 대한 각 요소에 액세스 할 수 ()에 사용할 수 있습니다
$ ( "# 용기"). (함수를 "# xyz이"을 "클릭"에 () { 경고 ($ (이) .val ()) }) <스크립트 SRC = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"> script>
<버튼 ID = "XYZ"TYPE = "버튼"클래스 = "BTN BTN - 우선"값 = "1"> XYZ1 버튼> <버튼 ID = "XYZ"TYPE = "버튼"클래스 = "BTN BTN - 우선"값 = "2"> 가나다 버튼> <버튼 ID = "XYZ"TYPE = "버튼"클래스 = "BTN BTN - 우선"값 = "3"> XYZ3 버튼> DIV>과에 대한 정보는 () 여기
from https://stackoverflow.com/questions/11114622/jquery-id-selector-works-only-for-the-first-element by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] 어떻게 추가하거나 쿼리 문자열 매개 변수를 업데이트 할 수 있습니다? (0) 2020.09.26 [JQUERY] 수동 catch되지 않은 TypeErrors에서 PrimeFaces 결과로 / 로딩 jQuery를 추가 (0) 2020.09.26 [JQUERY] 페이지에서 파일을 삭제하면 어떻게 파일의 입력 값을 설정하는 방법? [복제] (0) 2020.09.26 [JQUERY] 브라우저 / 탭이 활성화되어 있는지 확인하는 방법 [중복] (0) 2020.09.26 [JQUERY] jQuery를에 div 요소를 생성 [중복] (0) 2020.09.26