cs_lcmartin
Messages postés26Date d'inscriptionjeudi 25 septembre 2003StatutMembreDernière intervention 6 juin 2005
-
16 févr. 2005 à 21:51
cs_roro06
Messages postés732Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention29 octobre 2007
-
17 févr. 2005 à 11:07
Bonjour,
j'ai n formulaires form_1,form_2.... ou form["1"], form["2"]....
que faut il faire pour tous les envoyer via un seul bouton submit ?
j'ai essayé avec "for", "while"... mais à chaque le problème réside dans la définition du formulaire concerné : document.form[i].Submit() (que javascript ne reconnait pas...)
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 17 févr. 2005 à 08:56
Bonjour,
même en mettant le même name aux form,
en faisant un for et submit() ça ne
fonctionnerait pas encore : le 1er submit
ferait changer de page donc le script
"n'existerait plus".
à faire dans des pop-up successives ?
cs_roro06
Messages postés732Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention29 octobre 2007 17 févr. 2005 à 10:02
Bonjour
Déjà, c'est : document.forms[i].submit() que javascript reconnaitra plus volontier.
Tu peux, pour contourner le problème, rajouter : "target=_blank" dans chaque formulaire, ce qui aura pour conséquence d'ouvrir autant de fenêtres que de formulaires (mais qui peuvent se fermer automatiquement grâce à javascript :
function quitter()
{
opener=self;
window.close();
}
cs_lcmartin
Messages postés26Date d'inscriptionjeudi 25 septembre 2003StatutMembreDernière intervention 6 juin 2005 17 févr. 2005 à 10:29
C'est pas le problème de la destination parceque les résultats s'affichent tous dans une iframe...
C'est le problème du submit de tous les formulaires :
j'ai : <form name='forms["1"]'> <form name='forms["2"]'> <form name='forms["3"]'> ... <form name='forms["n"]'>
cs_roro06
Messages postés732Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention29 octobre 2007 17 févr. 2005 à 10:43
Bonjour
teste plutot :
for (var j=0; j<document.forms.length; j++)
document.forms[j].submit();
C'EST un problème de destination, pour la raison évoquée par Bul.
Enfin, évite de nommer des formulaires avec form(mots réservé).
nomme-les autrement, par exemple tartempion1, tartempion2 ... la fonction que je t'ai donnée marchera quand-même, sous les conditions données plus haut.
Et bien-sûr, il faut fermer les balises form.
Cordialement
Roro webDev
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_lcmartin
Messages postés26Date d'inscriptionjeudi 25 septembre 2003StatutMembreDernière intervention 6 juin 2005 17 févr. 2005 à 10:51
bonjour,
j'ai aussi oublié uen autre petite question...
pourquoi quand on fait le submit via JS, cela ne déclanche pas l'action "onsubmit" pour vérifier le formulaire...
comment peut on faire une boucle pour vérifier tous les forms avant envoit... et d'arreter tous le processus si la fonction de vérification trouve une erreur???
du style
fonction envoyer {
for(......){
if(Verif(document.forms[i])==false){ //et là on stope tous }
}
// et si rien n'a était stoppé, alors on lance l'envoi
for(.....){
......submit()
}
}
cs_roro06
Messages postés732Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention29 octobre 2007 17 févr. 2005 à 11:07
Bonjour
Question 1 :
document.forms[j] représente le formulaire n° j+1 de ta page, quelque soit son nom.
Question 2 :
Ne pas mettre de bouton submit, dans le formulaire, mais un bouton button avec onclick="envoyer()".
Après, c'est la fonction envoyer qui se charge d'envoyer ou non le(s) formulaire(s) grâce à ...submit(). Comme ça, si le client désactive javascript, ça n'envoie pas le formulaire, tout simplement.