IT Share you

jQuery ID 선택기 (“#id”) 반환 배열

shareyou 2020. 11. 27. 21:42
반응형

jQuery ID 선택기 (“#id”) 반환 배열


noConflict 모드에서 jQuery v1.6.1을 사용하고 있습니다.

$j("#divID").value저장된 항목의 값을 가져 오는 것과 같은 ID 선택기를 사용하고 있습니다.

불행히도 $j("#inputID")항목 목록을 반환하므로을 사용 $j("divID")[0].value하여 개체의 값을 가져와야합니다. [0]하나의 HTML 요소 주어진 ID로, 정의에 있기 때문에, 불필요한 보인다.

이것이 ID가 지정된 개체에서 값을 가져 오는 적절한 방법입니까? 아니면 더 좋은 방법이 있습니까?

감사!


$j("#divID").val() 잘 작동합니다.

jQuery를 문서 , .val()정합 소자들의 세트의 첫 번째 요소의 값을 반환한다.

이러한 방식으로 작동하는 이유를 확인하려면 jQuery가 어떻게 작동하는지 개념적으로 이해하는 것이 좋습니다. 선택기 쿼리의 결과는 jQuery 객체입니다. jQuery가 제공하는 수많은 메소드를 포함하는 것은 jQuery 객체입니다. .val()그 방법 중 하나는 같은 것들입니다 .fadeIn(), .hide()... 그 방법은 DOM 객체 메소드하지만, jQuery를 객체의 메서드 아닌, 등등. jQuery 객체는 범용이고 내부 배열에 0, 1 또는 그 이상의 DOM 객체를 보유 할 수 있기 때문에 결과에 0, 1 또는 그 이상의 DOM 객체가 있는지 여부에 관계없이 jQuery 선택기 호출에서 동일한 jQuery 객체를 다시 가져옵니다.

따라서 $j("#divID")하나의 객체 만 $j(".rows")포함 된 것은 수백 개의 DOM 객체를 포함 할 수있는 것과 동일한 유형의 객체를 반환 합니다. 선택기 쿼리에서 얼마나 많은 개체가 반환되는지에 따라 다르게 작업 할 필요가 없기 때문에 jQuery 프로그래밍이 크게 단순화됩니다.

를 참조 $j("divID")[0]하면 jQuery 객체의 DOM 객체 내부 배열 (선택기 쿼리에 채워짐)에 도달하고 해당 배열의 첫 번째 DOM 객체를 가져옵니다. 이 시점에서 jQuery 객체가 아닌 일반 DOM 객체가 있으며 여기에 일반 DOM 메서드 또는 속성을 사용할 수 있습니다. 때때로 이것이 필요하지만 (실제 DOM 객체를 가져 오기 위해) 일반적으로 jQuery가 jQuery 객체에서 제공하는 메소드를 사용하는 것이 더 쉽습니다. 여러 요청을 대부분의 메서드에 연결할 수 있고 자동으로 내부 배열의 모든 DOM 개체를 반복 할 수 있다는 점과 같이이를 사용하면 많은 이점이 있습니다.

예를 들어 다음 $j("rows-even").hide()같이 호출했습니다. 해당 클래스에 행이 20 개 있었으면이 행보다 더 많은 코드를 사용하지 않고 모두 hide () 메서드에 의해 작동됩니다. 다음과 같이 여러 메서드를 함께 연결할 수 $j("rows-even").slideUp().slideDown()있습니다. 이 경우 애니메이션을 실행하고 jQuery는이 두 애니메이션을 함께 연결하여 첫 번째 애니메이션이 완료되면 두 번째 애니메이션을 자동으로 시작합니다. 많은 상황에서 모두 매우 유용하며 평범한 JS를 사용하여 일반적으로 작성해야하는 것보다 많은 코드를 절약 할 수 있습니다.


$j("#divID")jQuery객체를 반환 합니다. 선택한 요소 val의 값을 얻으려면 해당 메서드를 호출 하여 값을 가져와야합니다.

사용하다 $j("#divID").val();

참고 URL : https://stackoverflow.com/questions/7183704/jquery-id-selector-id-returns-array

반응형