回答:
これを試して:
$(":radio[value=foobar]")
これにより、属性を持つすべてのラジオボタンが選択されますvalue="foobar"
。
function(i, val) { $(":radio[value="+val+"]").attr('checked',true); }
私はjQuery 1.6を使用していますが、これは私にとってはうまくいきませんでした: $(":radio[value=foobar]").attr('checked',true);
代わりに、私は使用しています:$('[value="foobar"]').attr('checked',true);
そしてそれは素晴らしい働きをします。
私が使用している実際のコードは最初に無線をクリアし、prop
代わりに使用しますattr
$('[name=menuRadio]').prop('checked',false);
$('[name=menuRadio][value="Bar Menu"]').prop('checked',true);
HTMLに次のようなものがあるとします。
<fieldset>
<input type="radio" name="UI_opt" value="alerter" checked> Alerter<br/>
<input type="radio" name="UI_opt" value="printer"> Printer<br/>
<input type="radio" name="UI_opt" value="consoler"> Consoler<br/>
</fieldset>
次に、このようなことが機能します。
$("fieldset input[name='UI_opt'][checked]").val()
完全なセレクターは次のようになります。
bool shipToBilling = $("[name=ShipToBillingAddress][value=True]")
あなたがおそらくこのような複数のラジオボタングループを持っているとすれば
<input name="ShipToBillingAddress" type="radio" value="True" checked="checked">
<input name="ShipToBillingAddress" type="radio" value="False">
<input name="SomethingElse" type="radio" value="True" checked="checked">
<input name="SomethingElse" type="radio" value="False">
このようなIDセレクター(次の例)を使用するのはよくありません。同じIDの要素を複数持つべきではないからです。私はこの質問を見つけた誰かがすでにこれが悪いことを知っていると思います。
$("#DidYouEnjoyTheMovie:radio[value=yes]")
以下について:radio
は、関心がある場合とない場合があります。
:radioはjQuery拡張であり、CSS仕様の一部ではないため、:radioを使用するクエリは、ネイティブのDOM querySelectorAll()メソッドによって提供されるパフォーマンスの向上を利用できません。最新のブラウザでより良いパフォーマンスを得るには、代わりに[type = "radio"]を使用してください。