J'ai une liste de cases à cocher:
<input type="checkbox" name="answer" id="id_1' value="1" />
<input type="checkbox" name="answer" id="id_2' value="2" />
...
<input type="checkbox" name="answer" id="id_n' value="n" />
Je peux collecter toutes les valeurs des cases cochées; ma question est de savoir comment obtenir toutes les valeurs des cases à cocher non cochées? J'ai essayé:
$("input:unchecked").val();
pour obtenir la valeur d'une case à cocher non cochée, mais j'ai obtenu:
Erreur de syntaxe, expression non reconnue: non cochée.
quelqu'un peut-il faire la lumière sur cette question? Merci!
Réponses:
Comme l'indique le message d'erreur, jQuery n'inclut pas de
:unchecked
sélecteur.Au lieu de cela, vous devez inverser le
:checked
sélecteur:la source
$("input:checkbox:not(:checked)")
Vous obtiendrez les cases non cochées.la source
Vous pouvez le faire en étendant la fonctionnalité jQuerys. Cela réduira la quantité de texte à écrire pour le sélecteur.
Vous pouvez ensuite utiliser
$("input:unchecked")
pour obtenir toutes les cases à cocher et tous les boutons radio cochés.la source
Il peut également être réalisé avec des js purs de la manière suivante:
la source
Ceci récupérera toutes les cases à cocher non cochées et exclura la case à cocher "chkAll" que j'utilise pour cocher | décocher toutes les cases à cocher. Puisque je veux savoir quelle valeur je transmets à la base de données, je les ai désactivées, car les cases à cocher me donnent la valeur on.
la source
chkAll
boîte, alors à quoi bon en parler.Vous pouvez utiliser comme ceci:
la source
Pour sélectionner par
class
, vous pouvez procéder comme suit:la source
la source