Estoy un poco confundido acerca de cómo obtener un índice de una opción seleccionada de un <select>elemento HTML .
En esta página hay dos métodos descritos. Sin embargo, ambos siempre regresan -1. Aquí está mi código jQuery:
$(document).ready(function(){
$("#dropDownMenuKategorie").change(function(){
alert($("#dropDownMenuKategorie option:selected").index());
alert($("select[name='dropDownMenuKategorie'] option:selected").index());
});
});
y en 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>
(...)
¿Por qué este comportamiento? ¿Hay alguna posibilidad de que selectno esté "listo" en el momento de asignar su change()método? Además, cambiar .index()a .val()es devolver el valor correcto, así que eso es lo que me confunde aún más.
[name=]cuando se usa selectid. Las respuestas[0].selectedIndexyoption:selectedabajo están bien.