Trucsweb.com

Forum de discussion

 Forum « Programmation Javascript » (archives)

Re: cocher tous mes checkbox

Envoyé: 3 mai 2004, 9h25 par Oznog


Salut,

Tellement d'erreur pour un si petit code. En plus mélangé avec le PHP rien pour arranger ton cas.

On va y aller à la base, car ton problème n'a pas de solution à cause d'un racoucit PHP incompatible avec le Javascript!

La base (voir les tutoriels sur les formulaires dans la section Javascript)

1. Utilisation du this

Dans ta fonction tu utilise this qui n'est bien sûr pas le formulaire mais la fonction elle-même this=Check_all. Pour utiliser le formulaire tu dois le passer (ou le cibler directement document.monForm...)

onClick="Check_all(this.form)"

Ainsi la fonction maintenant "Check_all(_form)" pourra utiliser le formulaire en passant par "_form" et nom pas this.

2. Le code devrait donc être

for (i = 0; i < _form.multi_supp.length; i++) _form.multi_supp[i].checked = true;

3. Maintenant le formulaire va partir alors tu doit l'anuler avec le "return".

onClick="return Check_all(this.form)"

Et à la fin de la fonction "return false"

4. Code complet

function Check_all(_form) {
for (i = 0; i < _form.multi_supp.length; i++) _form.multi_supp[i].checked = true ;
return false
}

<input name="tout_cocher" type="image" id="tout_cocher" onClick="return Check_all(this.form)" src="images/ok.gif" width="20" height="18" >

5. L'usage des braquette "[]" est un code caché pour indiquer au moteur PHP des "spliter" la chaîne dans une matrice (array). Malheureusment ce n'est pas une véritable matrice MAIS UN SIMPLE NOM D'ÉLÉMENT, en d'autres mots une astuce pour ne pas avoir à faire ce travail manuellement en PHP (chose qui se fait donc en menuelle en deux lignes de code, dans le forum PHP s.v.p.) lors de la réception via l'en-tête HTTP.

MAIS LE Javascript ne comprend pas ces braquette, il plante tout simplement.

C'est un peu m'élangeant pour un débutant car l'élément de type "checkbox" est lui-même une matrice dans l'objet formulaire. (pas ce qui passera par l'en-tête HTTP mais bien l'élément "checkbox" du DOM de la page.)

Tu ne peux certes pas cibler le nom "_form.multi_supp[]" puis en même temps la matrice "_form.multi_supp[i]" ce qui devrait donner :

_form.multi_supp[][i], interprété par le javascript comme une matrice à deux dimensions comportant une erreur!

Ciao
Oznog


Réponses

 sp spRe: cocher tous mes checkbox bpdelavega3/5/2004
Aucun médias sociaux
X

Trucsweb.com Connexion

Connexion

X

Trucsweb.com Mot de passe perdu

Connexion

X

Trucsweb.com Conditions générales

Conditions

Responsabilité

La responsabilité des Trucsweb.com ne pourra être engagée en cas de faits indépendants de sa volonté. Les informations mises à disposition sur ce site le sont uniquement à titre purement informatif et ne sauraient constituer en aucun cas un conseil ou une recommandation de quelque nature que ce soit.

Aucun contrôle n'est exercé sur les références et ressources externes, l'utilisateur reconnaît que les Trucsweb.com n'assume aucune responsabilité relative à la mise à disposition de ces ressources, et ne peut être tenue responsable quant à leur contenu.

Droit applicable et juridiction compétente

Les règles en matière de droit, applicables aux contenus et aux transmissions de données sur et autour du site, sont déterminées par la loi canadienne. En cas de litige, n'ayant pu faire l'objet d'un accord à l'amiable, seuls les tribunaux canadien sont compétents.

X

Trucsweb.com Trucsweb

X

Trucsweb.com Glossaire

X

Trucsweb.com Trucsweb

X

Trucsweb.com Trucsweb

Conditions

Aucun message!

Merci.

X
Aucun message!
X

Trucsweb.com Créer un compte

Créer un compte

.
@