Réponses:
Essaye ça:
$(":radio[value=foobar]")
Cela sélectionnera tous les boutons radio avec l'attribut value="foobar"
.
function(i, val) { $(":radio[value="+val+"]").attr('checked',true); }
J'utilise jQuery 1.6 et cela n'a pas fonctionné pour moi: $(":radio[value=foobar]").attr('checked',true);
Au lieu de cela, j'utilise: $('[value="foobar"]').attr('checked',true);
et cela fonctionne très bien.
Le code réel que j'utilise efface d'abord les radios et utilise à la prop
place deattr
$('[name=menuRadio]').prop('checked',false);
$('[name=menuRadio][value="Bar Menu"]').prop('checked',true);
Ceci peut également être réalisé par ceci:
$('input[type="radio"][value="aaa"]').val();
Cela sélectionnera la radio qui a la valeur de aaa
Avec .filter()
méthode:
var radio = $('input[type="radio"]').filter(function(){
return this.value === 'aaa';
}).val();
aaa
ensuite renvoyer le'aaa'
dites que vous avez quelque chose comme ça dans le 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>
alors ce genre de chose fonctionne.
$("fieldset input[name='UI_opt'][checked]").val()
Un sélecteur complet ressemblerait à ceci:
bool shipToBilling = $("[name=ShipToBillingAddress][value=True]")
étant donné que vous avez probablement plus d'un groupe de boutons radio comme celui-ci
<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">
L'utilisation d'un sélecteur d'ID comme celui-ci (exemple suivant) est mauvaise car vous ne devriez pas avoir plusieurs éléments avec le même ID. Je suppose que quelqu'un qui trouve cette question sait déjà que c'est mauvais.
$("#DidYouEnjoyTheMovie:radio[value=yes]")
Ce qui suit :radio
peut ou non être intéressant
Parce que: radio est une extension jQuery et ne fait pas partie de la spécification CSS, les requêtes utilisant: radio ne peuvent pas profiter de l'amélioration des performances fournie par la méthode native DOM querySelectorAll (). Pour de meilleures performances dans les navigateurs modernes, utilisez plutôt [type = "radio"].