[Javascript] problème de Frame

problème de Frame [Javascript] - Programmation

Marsh Posté le 04-02-2002 à 17:20:22    

Hello all,
 
je cherche à avoir accès à un champ d'une frame, pour ce faire je fais ca :  
parent.frames["toolplace"].document.sourceForm.<%=champs%>.value = valeur;
 
mais ca ne marche pas, en remplaçant parent.frames par top.opener c'est bon mais comme des fois la frame est raffraichie ca ne fonctionne plus...
 
quelqu'un a-t-il une soluce ?
 
merci :)


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 04-02-2002 à 17:20:22   

Reply

Marsh Posté le 04-02-2002 à 18:12:38    

:bounce:  mon pb doit puer :p  :bounce:


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 05-02-2002 à 09:31:41    

:bounce:


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 05-02-2002 à 11:07:02    

:bounce:


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 05-02-2002 à 11:14:16    

Essaye comme çà :
parent.toolplace.sourceForm.<%=champs%>.value = valeur;


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 05-02-2002 à 11:19:37    

marche pas :(


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 05-02-2002 à 11:27:12    

Quel navigateur ?
C'est quoi le message d'erreur JS ?
 
Chez moi, sous IE cette syntaxe fonctionne.
 
parent.nomDeFrame.nomDeFormulaire.nomDeChamp.value = xxx;


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 05-02-2002 à 11:38:47    

je suis sous IE ok :) mais la frame ne fait pas partie de la meme fenetre... je sais pas comment faire


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 05-02-2002 à 11:49:16    

Faut en dire plus sur la structure du site.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 05-02-2002 à 13:05:45    

Voilà le site est fait en ASP (VBscript), il y'a une fenetre avec 2 frames, sur la deuxieme frame y'a un lien qui ouvre une autre petite fenetre. des que l'on fait une manip sur cette fenetre cela fait un submit() sur la 2e frame (qui donc se raffraichit)  
en utilisant un top.opener la premiere fois ca marche mais une fois la frame rechargée ce meme bout de code ne fonctionne plus ce qui est logique, je cherche donc une autre méthode pour avoir accès au champs qui est sur la 2e frame.


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 05-02-2002 à 13:05:45   

Reply

Marsh Posté le 05-02-2002 à 15:37:50    

Je n'ai pas ton problème !
Ce que j'ai testé :
 
index.htlm

Code :
  1. <SCRIPT>
  2. // Pour que f2 n'ouvre pas f3 à chaque chargement.
  3. var f3 = false;
  4. </SCRIPT>
  5. <HEAD>
  6. <TITLE>Test Frames!</TITLE>
  7. </HEAD>
  8. <HTML>
  9. <!-- Gestion des Frames -->
  10. <FRAMESET ROWS="*,*">
  11. <FRAME SRC="f1.html" NAME="f1">
  12. <FRAME SRC="f2.html" NAME="f2">
  13. </FRAMESET>
  14. </HTML>


 
f1.html

Code :
  1. <H1>F1</H1>


 
f2.html

Code :
  1. <H1>F2</H1>
  2. <SPAN ID="toto">Coucou</SPAN>
  3. <FORM action="f2.html">
  4. <INPUT TYPE="SUBMIT">
  5. </FORM>
  6. <SCRIPT>
  7. // Pour n'ouvrir f3 que la première fois.
  8. if( !parent.f3 )
  9. {
  10. window.open("f3.html","f3" );
  11. parent.f3 = true;
  12. }
  13. </SCRIPT>


 
f3.html

Code :
  1. <SCRIPT>
  2. function doIt()
  3. {
  4. top.opener.toto.innerHTML="Coucou from f3!";
  5. }
  6. </SCRIPT>
  7. <BUTTON onclick="doIt();">Click</BUTTON>


 
Donc, je demande index.html
J'ai mes 2 frames F1 et F2, et la fenêtre F3 s'ouvre.
Dans F2, j'ai le message "Coucou".
Si je click sur le bouton de F3, le message de F2 devient "Coucou from f3!".
La dessus, je click sur le boutton submit de F2. Le message redevient "Coucou". Et là, le boutton Click de F3 marche toujours !
 
J'ai dû manquer une étape dans ton problème !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 05-02-2002 à 16:22:51    

j'ai testé ton truc ca marche bien, je comprends pas pourquoi mon truc marche pas ...


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 05-02-2002 à 16:44:15    

mara's dad : dans f3.html je veux pas utiliser top.opener mais directement le nom de la frame


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 07-02-2002 à 11:23:36    

Alors, t'en es où ?
Cà marche ou pas ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 07-02-2002 à 11:33:44    

à mon avis, ca marche pas parce que c'est pas de frame qu'il parle mais de fenêtre.
 
sinon, window.opener ca marcherait pas ...
 
c'est bien ca : tes deux pages ne sont pas dans le même fenetre ?


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 07-02-2002 à 15:27:35    

ca marche pas, et oui ce ne sont pas les meme fenetres  
 
voila le topo :
 
la fenetre f.asp se divise en 2 pour avoir f1.asp et f2.asp  
sur f2.asp on a un bouton qui ouvre une fenetre f3.asp
Dans f3.asp un clic fait faire un submit à f2.asp (le submit appelle bob.asp qui raffraichit les frames f1 et f2)
 
et voila donc au deuxieme clic dans f3 il se passe rien.


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 07-02-2002 à 15:53:31    

Ben c'est bob qui fout le bordel !
Il remplace f.asp (si je comprend bien) et donc les frames f2 et f3 ne sont plus dans le même document, et donc f3 ne trouve plus rien...
 
Donc, Il ne faut pas toucher à f !
 
Donc, dans f2 tu fait le submit de f3 ET le submit de f2.
Il faut que le submit de f2 recharge f2 et non BOB !
 
A toi de mettre un formulaire caché dans f2 qui passe des paramètres à f2.asp pour lui dire de faire les traitements que faisait bob.
Idem pour f3...
 
Ouf, si t'as compris, j'ai de la chance, mais c'est quand même pas simple à expliquer ! ! !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 07-02-2002 à 15:56:18    

Je me disais bien que ce connard de bob foutait le bordel...
bon je vais devoir tout reprendre car tout est en ASP de chiottes!
merci mara's safin euh dad :D


---------------
"There's not such a thing as a stupid question, only stupid people..."
Reply

Marsh Posté le 07-02-2002 à 16:11:22    

Bon courage !
 
Le truc, c'est de ne pas toucher à f.asp
 
Donc pas de lien du genre :
"bob.asp" target="_top"
ni même :
"f.asp" target="_top"
Dés que tu touche à f.asp, f3 sera dans le noir !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed