使用すると次のようになります:
var _val = $("input[name='input1'][checked]").val();
と思っていたのですが、_val の値が未定義であることが分かりました。 IE6、7、FF、Chrome、Opera、Safariでは正常に値が取得できますが、IE8では取得できません。私は解決策に戸惑いましたが、実験してみました。
var _val = $("input[name='input1']").eq(0).val();
を示す値が取得できます。問題はラジオの selected 属性で発生する可能性があります。もう一度実験してください:
var _val = document.getElementsByName("input1")[0].getAttribute("checked"); IE6 では、
の値は true または false です。 7、FF、Chrome、Opera、Safari、ただし IE8 では空です。IE8 では
:
var _val = document.getElementsByName("input1")[0].checked;
は true または false に設定できます。これが IE8 のバグなのか、それとも Microsoft に別の意図があるのかはわかりません。
最終用途:
var _val = $(":radio[name='input1'][checked]").val();
これは、jquery1 のテスターで正常に動作すると推定されます。 3.2 IE8 のテストは十分に包括的ではありません。次のバージョンでこの問題が解決されることを願っています。