Jak mogę użyć JQuery, aby znaleźć przycisk radiowy według jego wartości?JQuery - znajdź przycisk opcji według wartości
Odpowiedz
Spróbuj tego:
$(":radio[value=foobar]")
Spowoduje to zaznaczenie wszystkich przycisków radiowych z atrybutem value="foobar"
.
używam jQuery 1.6 i to nie działa dla mnie: $(":radio[value=foobar]").attr('checked',true);
Zamiast tego używam: $('[value="foobar"]').attr('checked',true);
i działa świetnie.
Rzeczywisty kod używam czyści radio pierwszy i wykorzystuje prop
zamiast attr
$('[name=menuRadio]').prop('checked',false);
$('[name=menuRadio][value="Bar Menu"]').prop('checked',true);
Czy to błąd, który został naprawiony? czy powinniśmy nadal umieszczać cytaty wokół wartości? –
że masz coś takiego w kodzie 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>
to ten rodzaj rzeczy Prace.
$("fieldset input[name='UI_opt'][checked]").val()
pełny selektor będzie wyglądać następująco:
bool shipToBilling = $("[name=ShipToBillingAddress][value=True]")
zważywszy, że prawdopodobnie masz więcej niż jedna grupa przycisku radiowego jak ten
<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">
Korzystanie z selektora identyfikatora takiego (następna przykład) jest zły, ponieważ nie powinieneś mieć wielu elementów o tym samym ID. Zakładam, że ktoś znajdujący to pytanie już wie, że to źle.
$("#DidYouEnjoyTheMovie:radio[value=yes]")
Poniższy o :radio
mogą lub nie mogą być przedmiotem zainteresowania
Ponieważ: radio jest rozszerzenie jQuery i nie jest częścią specyfikacji CSS , kwerendy przy użyciu: Radio może nie skorzystać z Zwiększenie wydajności zapewniane przez natywną metodę DOM querySelectorAll() . Aby uzyskać lepszą wydajność w nowoczesnych przeglądarkach, użyj zamiast tego [type = "radio"] .
ten można osiągnąć przez to zbyt:
$('input[type="radio"][value="aaa"]').val();
ten wyłoni radio, które ma wartość aaa
Z .filter()
metody:
var radio = $('input[type="radio"]').filter(function(){
return this.value === 'aaa';
}).val();
Dzięki Użyłem go jako takiego: jQuery.each (cookieObj, functio n (i, val) { $ (": radio [value = val]"). attr ("sprawdzone", prawda); }); – van
@ test: spróbuj zamiast tego: 'function (i, val) {$ (": radio [value = "+ val +"] "). Attr (" checked ", true); } ' – Gumbo
w celach informacyjnych: http: //api.jquery.com/radio-selector/ –