88 votes

La valeur de la case à cocher est toujours "on".

Voici ma case à cocher

HTML

<label class="checkbox">
    <input id="eu_want_team" name="eu_want_team" type="checkbox">
</label>

JQuery

var eu_want_team = $('#eu_want_team').val();
alert(eu_want_team);

Il affiche toujours ON, qu'il soit vérifié ou non. Quel est le problème ?

66voto

Yotam Omer Points 8473

Utilice .is(':checked') à la place : Travailler avec jsFiddle

var eu_want_team = $('#eu_want_team').is(':checked');
alert(eu_want_team);

ou comme @Itay l'a dit dans les commentaires, vous pouvez utiliser la fonction jQuery .prop() pour obtenir la valeur de la propriété vérifiée :

alert($("#eu_want_team").prop("checked"));

12voto

shadow Points 2240
<label class="checkbox">
    <input id="eu_want_team" name="eu_want_team" type="checkbox" value="somevalue">
</label>

<script>
   var ele = document.getElementById("eu_want_team");
   if(ele.checked)
   alert(ele.value)

</script>

1voto

Roy M J Points 2933

Cela fonctionnera :

if ($('#element').is(":checked")) {
    eu_want_team = 1;
} else {
    eu_want_team = 0;
}
alert(eu_want_team);

0voto

Mark Points 1732

Jetez un coup d'œil à cette réponse pour vérifier si une case à cocher est cochée.

Comment vérifier si une case à cocher est cochée en jQuery ?

Mais en fait, vous voulez faire quelque chose comme ci-dessous pour vérifier sa valeur :

if ($("#element").is(":checked")) {
  alert("I'm checked");
}

0voto

Kimtho6 Points 3897

Je pense que c'est ce que vous voulez faire

$("#eu_want_team").click(function(){
    alert($(this).is(':checked')); 
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X