Lorsque je clique sur une case à cocher, pourquoi l'attribut coché n'est-il pas ajouté ? Vous pouvez voir le code ici http://jsfiddle.net/FCrSg/
Réponses
Trop de publicités?Les Attribut HTML checked
signifie : vérifié par défaut lors du chargement de la page. Cette ne le fera pas changent lorsqu'on clique sur la case à cocher.
<input type="checkbox" checked="checked"> <!-- The HTML attribute -->
Les Propriété DOM checked
est en fait l'état actuel de la case à cocher et est soit vrai/faux. Il s'agit de l'état actuel de la case à cocher qui est soit vrai, soit faux. volonté change lorsque l'on clique sur la case à cocher, mais n'est pas visible lorsque l'on inspecte le code HTML.
$('input:check')[0].checked == true;
// Whether or not the checkbox is currently checked
Si vous voulez le voir apparaître sur l'élément affiché dans la console, utilisez la commande native setAttribute()
méthode.
Exemple : http://jsfiddle.net/FCrSg/2/
this.setAttribute('checked',this.checked);
Cela donnerait donc ceci :
$('.user_roles').click(function(){
this.setAttribute('checked',this.checked);
console.log( $(this) );
});
La console devrait alors vous donner :
<input class="user_roles" type="checkbox" checked="true">
Cependant, vous n'auriez normalement pas besoin d'un tel attribut. En général, la propriété suffit.