Comment définir le bouton radio d'état avec JavaScript
Quelle méthode serait la meilleure à utiliser pour définir de façon sélective un ou plusieurs bouton radio(s) à un paramètre désiré avec JavaScript?
- Pourriez-vous nous dire pourquoi?
- jQuery a pris soin de ma plus récente éruption cutanée, il peut certainement vérifier boutons radio!
- Je suis d'accord, j'aime jQuery trop, mais c'est trop simple. Nous n'avons pas besoin de jQuery pour cela.
Vous devez vous connecter pour publier un commentaire.
Très simple
radiobtn.checked
devraient recevoir'checked'
au lieu detrue
, bien que je ne me souviens plus où j'ai lu cela..checked
avec le xhtml attributchecked="checked"
. Depuis xhtml essayé d'être compatible xml, aucun des attributs sans valeur ont été admis (contrairement à html 4 ou 5, où<sometag checked>
est la syntaxe correcte). Indépendamment de la majoration de la langue que vous utilisez, Javascript Javascript et Javascript les objets ont des propriétés qui pourrait très bien être une valeur booléenne. En effet, l'objet DOM associés à<input type="radio" />
a une propriété.checked
qui peut êtretrue
oufalse
.var
avantradiobtn = ...
pour éviter d'avoir à portée globale.la forme
value="cc" sera cochée par défaut, si vous retirez le "coché" non des boîtes sera vérifié lorsque le formulaire est chargé.
maintenant value="aa" est cochée. L'autre radio cases à cocher sont désactivées.
le voir en action: http://jsfiddle.net/yaArr/
Vous pouvez faire la même chose à l'aide de l'id du formulaire et le bouton radio id. Voici un formulaire avec id.
value="cc" est cochée par défaut.
maintenant value="aa" id="dinosaures" est cochée, tout comme avant.
Le voir en action: http://jsfiddle.net/jPfXS/
Vanille Javascript:
jQuery:
ou
yourRadioButton.checked
semble tentant, mais n'est pas recommandé dans cette SORTE de post[0]
,[1]
,[2]
, etc. après la$(...)
partie de le faire avant, mais quand je l'ai juste essayé$('input[name=foo]')[0].attr('checked', true);
j'ai euObject doesn't support this property or method
. Même chose si je mets('checked', 'checked')
. Mais quand j'ai mélangé le JavaScript avec jQuery option et ne$('input[name=foo]')[0].checked = true;
mis à l'amende juste. Impair.prop()
au lieu deattr()
pour le réglage des valeurs booléennes.Vous pouvez également définir explicitement la valeur du bouton radio:
avec le script suivant:
et bouton radio correspondant sera automatiquement vérifiée.
Regarder la exemple sur JSFiddle.
Je suis à la configuration d'un bouton radio à l'intérieur d'un fragment de document et essayé d'utiliser
radiobtn.checked = true;
.Qui n'a pas fonctionné donc j'ai plutôt allé avec cette solution:
radiobtn.setAttribute("checked", "");
pour le sélectionner.$("#id_of_radiobutton").prop("checked", true);