11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous,

Je dispose récupère une chaine de la forme: s="v1,v2,v3,...,vn'
Je souhaite instancier une checkbox multiple telle que:


input type="checkbox" name="q" id="q_1" value="v1">v1
input type="checkbox" name="q" id="q_2" value="v2">v2
input type="checkbox" name="q" id="q_3" value="v3">v3
...
input type="checkbox" name="q" id="q_4" value="vn">v4


J'ai beau retourner la fonction .val() sous toutes les syntaxes, rien à faire.

$("#info input:checkbox[name='q']").val([???]);

Si quelqu'un a une piste ?

Merci d'avance.

Pegos
Modifié par pegos (12 Aug 2009 - 18:55)
Je ne sais pas si c'est ce que tu cherches mais tu peux récupérer le nombre de checkbox checked ainsi :

var check = $("#maDiv:checked").val();


Je pense qu'à partir de là, il est possible de savoir lesquelles sont checked ou pas.
Merci de ta réponse Skoua, mais c'est l'inverse que je cherche à faire.
Je suis en modification d'un formulaire. Je récupère du serveur une chaine et je veux pré remplir une checkbox.

Pour la suite, j'arrive bien à récupérer la saisie de l'utilisateur et mettre à jour ma base, mais pour le remplissage, seule la 1ere valeur est prise en compte.

Pegos
Bonjour,

J'ai fini par trouver.

var x=new Array("v1","v2");

$("#info input:checkbox").val(x);

Il semble que je ne doive pas nommer les entrées.
Il me reste à créer mon tableau dynamiquement avec la chaine récupérée.