2010-02-10 5 views

Répondre

31
$('#idOfMyRadio').attr('checked',true); 
+8

Cela fonctionne, mais l'attribut officiel est .attr ("vérifié", "cochée"); – dtbarne

+0

Hmm, merci, je ne le savais pas. – Jage

+3

Juste comme une mise à jour pour les versions les plus récentes de jQuery: "La méthode .prop() doit être utilisée pour définir disabled et checked à la place de la méthode .attr()." http://api.jquery.com/prop/ – Tayler

4

Vraiment, il n'y a pas besoin de jQuery ici: il sera plus lent, d'introduire une dépendance cadre inutile et augmenter la possibilité d'erreur. La méthode DOM pour cela est aussi clair et lisible qu'il pourrait être, et fonctionne dans tous les principaux navigateurs retour aux années 1990:

document.getElementById("myradio").checked = true; 

Si vous devez utiliser jQuery alors je vous arrêter à l'utiliser pour mettre la main sur l'élément:

$("#myradio")[0].checked = true; 
3

En plus d'utiliser id ...

$('input[name="sort"]').attr('checked',true); 
$('input[value="2"]').attr('checked',true); 
+0

-1. Les deux seront presque certainement plus lents que d'utiliser le sélecteur d'identifiant. Le sélecteur d'identifiant peut optimiser et utiliser 'document.getElementById', ce qui est rapide, alors que ceux-ci devront parcourir toutes les entrées du document et vérifier les valeurs des attributs pour chacun d'entre eux. En outre, il est moins précisément ciblé: d'autres boutons radio dans la page que vous ne ciblez pas intentionnellement pourraient parfaitement avoir un 'name' de« sort »ou une« valeur »de 2. –

Questions connexes