これは簡単な質問ですが、参考資料が見つからないので、ここで説明します。
select要素があると仮定します。
<select id="sel">
<option value="1">1</option>
<option value="2">2</option>
</select>
次に、選択したオプションを取得しますvalue
。ほとんどの場合、この種のスニペットが使用されているのを目にします。
var sel = document.getElementById('sel');
console.log( sel.options[sel.selectedIndex].value ); //1
これはうまくいきます。select
ただし、要素にもvalueプロパティがあることがわかりました。
console.log( sel.value ); //1
両方の例をいじくりまわしてください。
2番目の形式は、はるかに単純であるだけでなく、IE6までさかのぼって機能します(はい、実際にテストしました。これがIE6対応バージョンです)。
最初のアプローチがこれほど広く受け入れられている理由はありますか?2番目のアプローチとの非互換性またはコーナーケースの問題はありますか?
ps。私の「最もよく使われるアプローチ」の論文は、主に個人的な経験に基づいていましたが、参考までに、 JavaScriptを使用してドロップダウンリストで選択された値を取得するので最も賛成の2つの答えはありますか?最初のアプローチを使用します。