ฉันสับสนเล็กน้อยเกี่ยวกับวิธีรับดัชนีของตัวเลือกที่เลือกจาก<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=]เลือกใช้เมื่อมีidอยู่ คำตอบ[0].selectedIndexและ - คำoption:selectedตอบด้านล่างใช้ได้ทั้งคู่