Garder valeurs champs d'un formaulaire avec differentes URL

cs_Bbeat Messages postés 6 Date d'inscription mardi 20 juillet 2004 Statut Membre Dernière intervention 9 août 2004 - 30 juil. 2004 à 14:47
cs_Bbeat Messages postés 6 Date d'inscription mardi 20 juillet 2004 Statut Membre Dernière intervention 9 août 2004 - 9 août 2004 à 17:36
Je cherche une solution pour garder les valeurs de champs d'un formulaire apres le changement d'URL.
Je m'explique, site internet avec pages d'acceuil en plusieurs langues. Le choix des langues se fait via un menu deroulant.
Example, une personne entre son nom/mot de passe et avant de valider veut changer de langue. Elle est donc dirigee sur une autre URL correspondant a sa langue. Le problem est que son nom et MDP ne sont pas transmis a cette nouvelle page d'acceuil.

Je pensais faire un truc du genre:

function returnurl(code_langue)
{
var nom;
var mdp;

nom= document.login.nom;
mdp = document.login.mdp;

switch (code_langue)
{
case 0 : return ('http://www.test.com/default.htm');
break;
case 1 : return ('http://www.test.com/defaultfr.htm');
break;
case 2 : return('http://www.test.com/defaultde.htm');
break;
}
}

Applel a cette fonction a partir du formulaire:

<form name="jump">
<select name="menu" onChange="location=document.jump.menu.options[document.jump.menu.selectedIndex].value;" value="GO">
<option value=js:createUrl(0)>English</option>
<option value=js:createUrl(1)>Français</option>
<option value=js:createUrl(2)>Deutch</option>
</select>
</form>

cela ne marche malheureusement pas...

Une idee? Merci!

9 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
30 juil. 2004 à 15:32
Bonjour,
2 problèmes qui se mélangent
° charger une URL en fonction de la langue
° passer des paramètres à cette nouvelle page
approche de réponse car manque d'infos
on suppose nom et mdp chargés des
valeurs nécessaires.
<script type="Text/JavaScript">
function appel()
{ location.href='http://www.test.com/default'+
  jump.menu[jump.menu.selectedIndex].value+'.htm'+
  '?'+nom+'&'+mdp;    }
</script>
<form name="jump">
<select name="menu" 
onChange="appel();"
value="GO">
<option value="en">English</option>
<option value="fr">Français</option>
<option value="de">Deutch</option>
</select></form>

les pages default??.htm récupèrent les paramètres
passés dans l'URL avec window.location.search
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
0
cs_Bbeat Messages postés 6 Date d'inscription mardi 20 juillet 2004 Statut Membre Dernière intervention 9 août 2004
9 août 2004 à 14:26
Bonjour,

Merci pour votre reponse. J'ai remplace mon code par le votre et lorsque je change de langue, j'ai maintenant le message suivant: Jump is not defined.
J'ai beau cherche, je ne trouve pas la probleme....
Merci encore.
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
9 août 2004 à 14:58
Bonjour,
Jump is not defined
jump ( j en minuscule ? je sais, c'est emmer...
cette distinction majuscules/minuscules )
si c'est çà ?
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
0
cs_Bbeat Messages postés 6 Date d'inscription mardi 20 juillet 2004 Statut Membre Dernière intervention 9 août 2004
9 août 2004 à 15:25
Bonjour,
jump est bien en miniscule.

Voici un copier/coller de la fct.

location.href='http://test/default'+jump.menu[jump.menu.selectedIndex].value+'.htm?ConfRef='+reference+'&Pin='+pin+'&Name='+username;

Merci!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
9 août 2004 à 15:48
jump.menu[jump.menu.selectedIndex].value
on fait donc référence à <select name="jump.menu" ...> ?
et si oui : pas sûr que le . soit autorisé ...
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
0
cs_Bbeat Messages postés 6 Date d'inscription mardi 20 juillet 2004 Statut Membre Dernière intervention 9 août 2004
9 août 2004 à 16:25
J'ai modifier un peu le code.

function createUrl(code)
{
var reference;
var pin;
var username;

reference = document.login.ConfRef;
pin = document.login.Pin;
username = document.login.Name;

location.href='http://test/default'+code+'.htm?ConfRef='+reference+'&Pin='+pin+'&Name='+username;

}

<form name="jump">
<select name="menu" onChange="createUrl();" value="GO">
<option value="en">English</option>
<option value="fr">Français</option>
<option value="sp">Español</option>
<option value="de">Deutch</option>
<option value="se">Svenska</option>
</select></form>

Je dois avouer que je suis vraiment perdu...
Dans votre premiere reponse je ne comprends pas comment le code est passe. Il est lu dans le fichier deroulant?
Pourquoi mettre option value="en"?
Une fonction peut etre elle appele comme ceci?
option value="javascript:createUrl(0)">English</option>

Merci pour votre precieuse aide!
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
9 août 2004 à 16:46
si vous voulez que la function reçoive un
paramètre : createUrl(code)
quand on l'appelle il faut lui transmettre :
ici avec le texte contenu dans value de la
ligne sélectionnée.
...onChange="createUrl(this[this.selectedIndex].value);"...
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
0
cs_Bbeat Messages postés 6 Date d'inscription mardi 20 juillet 2004 Statut Membre Dernière intervention 9 août 2004
9 août 2004 à 17:07
Ok, cela marche presque!
J'ai une derniere question...

Lorsque je recupere les donnees entrees par l'utilisateur et veut les afficher (pour verification) cela ne marche pas.
Cela est pareil pour la nouvelle URL:
http://test/defaultfr.htm?ConfRef=[object%20HTMLInputElement]&Pin=[object%20HTMLInputElement]&Name=[object%20HTMLInputElement]

A la place de [object%20HTMLInputElement] je voudrais avoir la valeur entree. Comment acceder a celle ci? Je definit bien les variables dans la fonction createUrl....

Merci pour votre patience...

function createUrl(code)
{
var reference;
var pin;
var username;

reference = document.login.ConfRef;
pin = document.login.Pin;
username = document.login.Name;
alert("code="+code);
alert("reference="+reference);

location.href='http://test/default'+code+'.htm?ConfRef='+reference+'&Pin='+pin+'&Name='+username;
}
0
cs_Bbeat Messages postés 6 Date d'inscription mardi 20 juillet 2004 Statut Membre Dernière intervention 9 août 2004
9 août 2004 à 17:36
J'ai trouve comment faire.... c'est dur dur de se mettre a la prog...
0
Rejoignez-nous