у меня есть этот код здесь:
<select id="test">
<option value="1">test1</option>
<option value="2" selected="selected">test2</option>
<option value="3">test3</option>
</select>
В моем сценарии у меня есть эти две строки кода, один JavaScript и еще один JQuery так:
var e = document.getElementById("user");
var e1 = $("#user");
Я даже распечатал те, в моей консоли, как это:
console.log(e)
console.log(e1)
Они печатают то же самое. Но когда я пишу код on
изменения событий, как это:
$("#user").change(function() {
console.log(e.options[e.selectedIndex].text)
});
Это именно то, что печать выбрать из выпадающего списка. Это способ javascript для извлечения из dom работает. То же самое с e1
вот так:
$("#user").change(function() {
console.log(e1.options[e1.selectedIndex].text)
});
бросает ошибку:
Uncaught TypeError: Cannot read property 'undefined' of undefined (anonymous function)create:167 f.event.dispatchjquery-1.7.1.min.js:3 f.event.add.i.h.handle.i
(видно из инструментов разработчика Хрома)
Что происходит? Я новичок в Javascript и jquery! Почему в моем случае jquery не работает?
На самом деле, они не печатают одно и то же. Другой печатает объект DOM, а другой печатает объект jQuery. – JJJ
@ Джухана: О! 'console.log' просто обманул меня! * _ * –