Formulaire avec nombre de paramètres variant

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Formulaire avec nombre de paramètres variant

par zeus » 19 mai 2006, 11:48

Si ce que tu cherches, c'est comment récupérer tous les inputs en Javascript, tu peut utiliser document.forms['formName'].getElementsByTagName("input") qui va te retourne la liste des inputs du formulaire formName

A partir de là, tu peut construire dynamiquement ta chaine en JS
var a_input = document.forms['formName'].getElementsByTagName("input");
var str_parametre = "monfichier.php?";
for (var i = 0; i < a_input.length; i++) {
  var input = a_input[i];
  str_parametre = str_paramete+"&"+input.getAttribute('name')+"="+input.value;
}

par guilt92 » 19 mai 2006, 11:37

tu peux mettre tout tes parametre à la suite les un des autres en les séparant par un caractère ou un ensemble de caractere que tu auras definis, envoyer la string la récupérer et la reséparer.

Par exemple entre chaque paramètre tu fais un string comme ceci
param1<sep>param2<sep>... Et quand tu récupère le string tu l'explose en cherchant les <sep>.

par Tictac » 19 mai 2006, 11:36

et si tu envoyais directement sous forme d'array !
tu traites ensuite l'array dans la page appelée par ton objetXHR !

Formulaire avec nombre de paramètres variant

par mister.jayyy » 19 mai 2006, 11:29

Bonjour

Je suis en train de développer un formulaire en intranet.
J'explique le principe dans un exemple concret:

Formulaire de gestion des compétences (génération de CV par exemple):
un lien ajouter une compétence
a chaque fois une textbox est rajoutée.

y'aurait il un moyen pour passer tous les éléments d'un formulaire sans être obligé de dire
MonObjetXHR.send('param1=...&param2=...&param3...=', 'mapage')
car le nombre de paramètres est inconnu à priori.

Il y a toujours un champs hidden qui compte le nombre, mais je n'ai pas vraiment envie de faire une boucle qui rajoute comme par exemple
param+= document.getElementById('param'+i).value;

Quelqu'un a-t-il une autre solution?