Меня немного смущает, как получить индекс выбранной опции из <select>
элемента HTML .
На этой странице описаны два метода. Тем не менее, оба всегда возвращаются -1
. Вот мой код jQuery:
$(document).ready(function(){
$("#dropDownMenuKategorie").change(function(){
alert($("#dropDownMenuKategorie option:selected").index());
alert($("select[name='dropDownMenuKategorie'] option:selected").index());
});
});
и в HTML
(...)
<select id="dropDownMenuKategorie">
<option value="gastronomie">Gastronomie</option>
<option value="finanzen">Finanzen</option>
<option value="lebensmittel">Lebensmittel</option>
<option value="gewerbe">Gewerbe</option>
<option value="shopping">Shopping</option>
<option value="bildung">Bildung</option>
</select>
(...)
Почему это поведение? Есть ли вероятность того, что select
он не «готов» в момент назначения change()
метода? Кроме того, переключение .index()
на .val()
возвращает правильное значение, так что меня это еще больше смущает.
[name=]
используется selectid
. И-[0].selectedIndex
иoption:selected
ответы ниже оба в порядке.