jQuery에서 document.getElementById("selectlist").value
?에 해당하는 것은 무엇입니까?
선택 목록 항목의 값을 얻으려고합니다.
감사.
jQuery에서 document.getElementById("selectlist").value
?에 해당하는 것은 무엇입니까?
선택 목록 항목의 값을 얻으려고합니다.
감사.
답변:
"동등한"이란 단어입니다
동안...
$('#selectlist').val();
...와 같습니다.
document.getElementById("selectlist").value
... 그것에 주목할 가치가 있습니다 ...
$('#selectlist')
... '동등'은 같지 않지만 ...
document.getElementById("selectlist")
... 전자는 DOM 객체가 아닌 jQuery 객체를 반환합니다.
jQuery 객체에서 DOM 객체를 가져 오려면 다음을 사용하십시오.
$('#selectlist').get(); //get all DOM objects in the jQuery collection
$('#selectlist').get(0); //get the DOM object in the jQuery collection at index 0
$('#selectlist')[0]; //get the DOM objects in the jQuery collection at index 0
이러한 종류의 질문에 대해서는 Jquery 설명서를 온라인으로 확인해야합니다. 혼합 은 매우 포괄적입니다. 당신이 추구하는 기능을 'jquery selectors'라고합니다
일반적으로 $('#ID').val()
.after는 선택기에서 반환 된 요소에서 여러 가지 작업을 수행 할 수 있습니다. 특정 클래스의 모든 요소를 선택하고 각 요소에 대해 무언가를 수행 할 수도 있습니다. 좋은 예는 설명서를 확인하십시오.
jQuery id 선택기가 document.getElementById보다 느린 지 궁금해하는 사람들에게는 대답은 '그렇지만'요소를 찾는 전체 DOM을 통해 검색한다는 선입견 때문이 아닙니다. jQuery는 실제로 기본 메소드를 사용합니다. 실제로 jQuery는 먼저 정규 표현식을 사용하여 선택기에서 문자열을 분리하여 확인하고 물론 생성자를 실행하기 때문입니다.
rquickExpr = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/
DOM 요소를 인수로 사용하면 'this'와 함께 즉시 반환됩니다.
그래서 이거:
$(document.getElementById('blah')).doSomething();
항상 이것보다 빠릅니다.
$('#blah').doSomething();
어떤 경우에는 이유를 기억할 수 없지만 $('#selectlist').val()
항상 올바른 항목 값을 반환하지는 않으므로 $('#selectlist option:selected').val()
대신 사용 합니다.