1

だから私はクロスブラウザのJavaScriptの問題を抱えています。

を持ついくつかの子孫要素<select>を持つ dom 要素があります。<option>selected=true

Firefox では、select_elt.value選択したオプションの値を取得することしかできませんが、これは IE6 では機能しないようです (サポートする必要があります)。

を反復してselect_elt.getElementsByTagName('option')、選択した を見つけようとしました<option>が、それは可能ですが、option_elt.valueそれでもそのオプションの値は得られません。

では、IE6 でオプションまたは選択要素の値を取得する適切な方法は何ですか?

(はい、jQuery やその他のクロスプラットフォーム ライブラリに切り替える必要があることはわかっていますが、まだそうかもしれませんが、IE6でこれがどのように行われているかに興味があります)

4

3 に答える 3

2

これは、(私の経験では)クロスブラウザ互換性のある方法です。

var mySelect = document.getElementById('mySelect');
alert(mySelect.options[mySelect.selectedIndex].value);
于 2009-12-04T22:12:36.963 に答える
0

これを試して:

select_elt.options[select_elt.options.selectedIndex].value
于 2009-12-04T22:14:01.300 に答える
0

jquery で見つけました:

(option_elt.attributes.value || {}).specified ? option_elt.value : option_elt.text
于 2009-12-04T22:08:46.613 に答える