Window.open pasez un variable

g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011 - 11 avril 2007 à 17:17
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011 - 13 avril 2007 à 10:59
salut !
j'ai trouve ceci dans le site ... apparement il marche pour certains elus et pas pour moi (sais pas pourkoi)

dans ma Deuxieme Page :
<script>
var MaDeuxiemeValeur;
 window.open("MaPremierePage.html?MaPremiereValeur="+MaDeuxiemeValeur);
</script>
mais rien ne marche !!!!
et pourtant ma deuxieme valeur devrait avoir la valeur de ma premiere non !!!

J.BAHOLE

16 réponses

stfou Messages postés 450 Date d'inscription samedi 16 avril 2005 Statut Membre Dernière intervention 18 avril 2007 3
11 avril 2007 à 17:47
Bonjour,
Pourquoi tu ne passe pas ta variable de cette façon :

var variable="valeur";
var popup=window.open("mapremierepage.html");
popup.passevariable(variable);

Dans ta deuxième page :

var variable;
function passevariable(valeur)
{
variable=valeur;
}

<hr /><hr />STFOU
0
stfou Messages postés 450 Date d'inscription samedi 16 avril 2005 Statut Membre Dernière intervention 18 avril 2007 3
11 avril 2007 à 17:50
Re :
Ta variable MaDeuxiemeValeur a la valeur undefined comme tu ne l'as pas définie. donc dans l'url tu auras :
MaPremiereValeur=undefined.
A moins que tu ne l'ai défini plus haut (évident à mon avis).
Ensuite, si tu veux récupérer les paramètres dans l'ul tu peux utiliser location.arguments.
<hr /><hr />STFOU
0
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011
11 avril 2007 à 18:04
ca me dit que c'est undefinied ...
voila le code :

my premiere page:
  var String1 =   st1+st2;
   alert(String1);
   document.write(String1);
   htmlSetCookie("subjectname",subject);
   alert(subject);
   var popup=window.open("mapremierpage.htm","_self","fullscreen =no","bReplace= false");(j'ai meme essai avec ma deuxieme page)
   popup.passingvariable(String1);

ma deuxieme page :
var htmlpage;
function passingvariable(valu)
{htmlpage =valu;}



Subject = htmlGetCookie("subjectname");
alert(Subject);
alert(htmlpage);






J.BAHOLE
0
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011
11 avril 2007 à 18:05
ces des nouveaux termes pour moi !!! je vais essayer de comprendre

J.BAHOLE
0

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

Posez votre question
stfou Messages postés 450 Date d'inscription samedi 16 avril 2005 Statut Membre Dernière intervention 18 avril 2007 3
11 avril 2007 à 18:29
var String1= st1+st2; st1 et st2 sont définis j'espère...
Si tu cherche a faire passer des variables entre deux pages avec un cookie, utilise soit l'url, soit le javascript, car tout le monde n'accepte pas forcément les cookies, et en plus ce serait une solution plus lourde. Avec l'url :
page 1:
window.open("mapremierpage.htm?var1=val1&var2=val2");

page2:
for( a in location.arguments)
{
eval("var $_"+a+" = ""+location.arguments[a]+""")
}

et tu obtiendra au final : $_var1=val1; $_var2=val2;

<hr /><hr />STFOU
0
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011
11 avril 2007 à 18:39
excuses moi stfou ... je te perd un peut ...
oui les st1 et st2 sont declares et je prefererais que tu n'y prettes pas attention .. et les cookies ici sont pour autre choses alors je te prie de ne pas y pretter attention non plus.
mais je comprend presque rien pourkoi devrais je ouvrire ma premiere page alors qu'elle est deja ouverte?
et pourkoi dire :
var popup=window.open("mapremierpage.htm","_self","fullscreen =no","bReplace=false");(j'ai meme essai avec ma deuxieme page)
   popup.passingvariable(String1);
alors que la method passingvariable(Valeur) se trouve dans la deuxieme page(la ou j'aimerais utiliser la valeur de la premiere page) !!!
j'ai bien fait(enfin je penses) ce que tu m'as dit mais nom seulement ca ne marche pas ... mais je ne voi pas pourkoi cela devrais marcher! ca fait 4 jours que je tourne en rond sur ce petit bout de code  et rien ... STP aide moi un peut plus!
merci

J.BAHOLE
0
yousfane Messages postés 243 Date d'inscription vendredi 24 novembre 2006 Statut Membre Dernière intervention 21 décembre 2007 2
11 avril 2007 à 18:43
Salut
essai ça

<script langage="javascript">
function ouvrire(){
win = window.open("mapremierpage.htm");
win.document.write("<script> mavariable = 'mavariable'"+"<"+"/"+"script>");
}
</script>
0
stfou Messages postés 450 Date d'inscription samedi 16 avril 2005 Statut Membre Dernière intervention 18 avril 2007 3
11 avril 2007 à 18:44
Oui enfin ta deuxième page, enfin celle que tu veux ouvrir quoi !

<hr /><hr />STFOU
0
stfou Messages postés 450 Date d'inscription samedi 16 avril 2005 Statut Membre Dernière intervention 18 avril 2007 3
11 avril 2007 à 18:46
YOUSFANE >> Non, car cela effacera tout le code source de la page pour juste marquer cette variable, or je ne pense pas que ce soit nécessaire.
Et, plutot que : "<"+"/"+"script>"
mieux vaut     : "<\/script>"

<hr /><hr />STFOU
0
yousfane Messages postés 243 Date d'inscription vendredi 24 novembre 2006 Statut Membre Dernière intervention 21 décembre 2007 2
11 avril 2007 à 18:48
oui t'as raison stfou je n'ai pas remarqué ça
0
stfou Messages postés 450 Date d'inscription samedi 16 avril 2005 Statut Membre Dernière intervention 18 avril 2007 3
11 avril 2007 à 18:50
En fait, voilà comment ça marche :
FENETRE                                       FENETRE
PARENTE                                      OUVERTE
une variable   --------------------> fonction (variable_a_passer) faire : une variable de la deuxièmepage=variable à passer

<hr /><hr />STFOU
0
yousfane Messages postés 243 Date d'inscription vendredi 24 novembre 2006 Statut Membre Dernière intervention 21 décembre 2007 2
11 avril 2007 à 19:06
Salut
passes la variable par l'url

<script langage="javascript">
window.open('mapremierpage.htm?mavariable=variable');
</script>
0
stfou Messages postés 450 Date d'inscription samedi 16 avril 2005 Statut Membre Dernière intervention 18 avril 2007 3
11 avril 2007 à 19:13
Il avait déja essayé.
Mais l'inconvénient est que l'on ne peut pas faire passer des objets, des tableaux, on ne peut passer que des chiffres et des chaines de caractère. en plus il est plus compliqué de faire variable1=val1&variable2=val2&variable3=val3 que de faire :
passer(variable1);
passer(variable2);
passer(variable3);
En plus, on ne peut plus passer de variable une fois la fenetre ouverte.

<hr /><hr />STFOU
0
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011
12 avril 2007 à 12:11
bonjours tout le monde
j'ai trouve qq chose sur le net qui resemble un peut a se que tu me proposais stfou:

premiere page
  var String1= value;
  window.open("deuxiemepage.htm?"+ String1,"_self","fullscreen =no","bReplace=false"); 
deuxieme page
 var htmlpage = document.location.search.substring(1);

alors la variable elle passe !!! mais le probleme est que qunad elle est est trop grande ... ca ne marche pas!!!!
Y aurait il pas en generale une limite sur les chaine de characters?
 

J.BAHOLE
0
stfou Messages postés 450 Date d'inscription samedi 16 avril 2005 Statut Membre Dernière intervention 18 avril 2007 3
12 avril 2007 à 13:49
Tu peux aussi utiliser
var arg=location.href.split("?")[1].split("&");
var arguments=[];
for(i=0;i<hr />STFOU
0
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011
13 avril 2007 à 10:59
merci beaucoup stfou!!! mais la sol de roro est en deux lignes ... mais je garde un oueil sur la tienne aussi. Elle me servira surement un de ces jours !
 BIGG THANX

J.BAHOLE
0
Rejoignez-nous