Page 1 sur 1

formulaire...remplir plusieurs champs

Posté : 09 nov. 2007, 11:35
par pierrot
Bonjour,
J'ai un formulaire avec des données relatives à une récolte. J'ai un champ "num_recolte" qui s'incrémente tout seul. Seulement l'utilisateur peut modifier ce champ "num_recolte" pour recuperer les donnees d'une recolte déjà existante. A coté de ce champ, j'ai donc fait un ptit bouton "RECUPERER" qui qd on clique dessus, lit le num_recolte, et grace à l'AJAX execute une requete pour remplir un autre champ à coté. Ca marche nickel, mais maintenant j'aimerai que la requete AJAX puisse recuperer plusieurs données pour remplir plusieurs champs.
Je ne sais pas comment faire car dans mon fichier de traitement php je renvoie juste un echo.... qui est recupéré par une response.Text dans mon fichier js. Comment faire pour recuperer plusieurs variables?
Merci

Posté : 09 nov. 2007, 12:35
par Ryle
Tu as plusieurs solution pour cela... la première consiste simplement à renvoyer tes différentes données séparées par un caractère (point virgule, pipe, autre...) que tu n'aurais plus qu'à découper en javascript pour les utiliser :
result = xhr.responseText; // si ton serveur retourne une chaine du genre "123|toto|..."
tableau = result.split('|');

document.formulaire.champ.value = tableau[0]; // renseigne avec "123"
document.formulaire.champ.value = tableau[1]; // renseigne avec "toto"
...
L'autre solution consiste à formater la "chaine" renvoyée par ton script php avec des balises xml :

Code : Tout sélectionner

<balise> <numero>123</numero> <chaine>toto</chaine> ... </balise>
Et d'utilser la propriété xhr.responseXml avec un parseur xml en javascript pour en récupérer les différentes valeurs :)

Posté : 09 nov. 2007, 13:26
par pierrot
ok, merci ryle
J'essaye la soluce du découpage en Js et je te tiens au courant.