2013-07-24 3 views
10

J'ai créé un formulaire de bouton radio de base 2 comme indiqué dans mon exemple ci-dessous.Bouton radio "Coché = coché" ne changeant pas lorsque l'option a été modifiée

En observant le rendu du navigateur, nous voyons l'élément 1 sélectionné. Nous inspectons les articles 1 et 2.

Lorsque je clique sur l'article 2, je m'attends à ce que item 1 soit coché = vérifié pour être enlevé. Je m'attends à ce que l'item 2 reçoive l'attribut checked = checked.

N'est-ce pas le comportement attendu?

<div> 
    <span>Item 1</span> 
    <input type="radio" name="radio1" id="radio1" checked="checked" /> 
</div> 

<div> 
    <span>Item 2</span> 
    <input type="radio" name="radio1" class="checkbox" id="radio2" /> 
</div> 

http://jsfiddle.net/chrimbus/ZTE7R/1/

+0

@quentin et d'autres: Vos réponses sont grands, fait ceci confirme alors que le comportement attendu d'un _attribute_ « checked » ne sera pas automatiquement mise à jour ** sans l'utilisation de Javascript ** – nthChild

+0

je pu? pour styliser le bouton radio et l'étiquette "cochée" en appliquant des styles à l'aide d'un pseudo-sélecteur: coché. Cela fonctionne pour IE9 +, Chrome et Firefox. http://jsfiddle.net/sXjyL/4/ – nthChild

Répondre

13

Le checkedattribut spécifie le bouton radio cochée par défaut , pas actuellement vérifié un.

Voir this example code. Cliquez sur le deuxième bouton radio, puis sur Réinitialiser. Puis cliquez à nouveau sur le deuxième bouton radio, puis sur Commuter, puis sur Réinitialiser.

La propriété cochée donnera l'état en cours de vérification d'un bouton radio.

Checked attribute vs checked property

+0

Était en attente de cette * propriété * vs * attribut * distinction :) – brbcoding

+0

@quentin Vos réponses sont bonnes, cela confirme-t-il alors que le comportement attendu d'un attribut "vérifié" sera pas mettre à jour automatiquement sans l'utilisation de Javascript? – nthChild

+0

Oui. Seul JavaScript peut changer l'attribut * checked * une fois la page chargée. – Quentin

Questions connexes