IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Popup, frame et form mal adress�


Sujet :

JavaScript

  1. #1
    Membre � l'essai
    Inscrit en
    Juillet 2002
    Messages
    6
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 6
    Par d�faut Popup, frame et form mal adress�
    Hello,
    A partir d'un bouton image (au sein d'une page 1), je souhaite ouvrir une page 2, d�clencher un fichier script et lui envoyer les donn�es formulaires de la page 1 (ces d�clenchements doivent pouvoir �tre effectu�s avec ou sans iFrame).

    Je r�ussit ceci avec sur la page 1
    * un formulaire avec une action=fichier script
    * un target=name de frame (ou iframe) de la page 2
    * sur l'image un onlick associ� � un window.open(page2, nompage2, param�tresfenetre), un submit du formulaire

    Ceci fonctionne correctement sous IE11 mais pas sous FF39.0 ni Chrome 43.0.2357.134 m

    Sous FF et Chrome les r�sultats sont identiques : ouverture de la page 2 mais ex�cution du script dans un nouvel onglet de la page 1 (et malheureusement pas dans le frame de la page 2) ...

    Page1
    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    <FORM NAME='CAILLET_cmde#fiche' TARGET='_SELF' METHOD='post' ...>
     
    <INPUT TYPE='image'  SRC='http://127.0.0.1:8888/Tableau/Script34/script34_j15_63/include/image/activer.gif'       TITLE='TVA' ALT=''  onClick='JavaScript: window.P_open["tva_f"]=window.open("http://127.0.0.1:8888/Tableau/Script34/script34_j15_63/Exemple/T1/tva_f.php","tva_f","width=500,height=400,modal=yes,toolbar=yes,location=yes,directories=yes,status=no,menubar=yes,scrollbars=no,copyhistory=yes,resizable=yes,dependent=yes");
    	 window.P_open["tva_f"].focus(); this.form.target="hauttva";'>
    * "tva_f" est mon nom de page 2
    * "hauttva" est le nom du iFRAME de la page 2

    Page2
    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    <DIV class='2'  style='display:inline'>
    	<DIV class='21' style='display:inline'>
    		<iFRAME NAME="hauttva" rows="200"></iFRAME>
    	</DIV>
    	<DIV class='22' style='display:inline'>
    		<iFRAME NAME="bastva" ></iFRAME>
    	</DIV>
    </DIV>

    Sauriez-vous pourquoi une telle diff�rence de comportement entre ces navigateurs ?
    * Est-ce un pb de synchronisation ou plut�t d'asynchronisation ?
    * Est-ce le name de la page 2 qui est mal identifi� ?
    * ?

  2. #2
    Expert confirm�
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 681
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 681
    Par d�faut
    est ce que tu ne peux pas utiliser un langage c�t� serveur pour �viter les diff�rences entre les navigateurs ?

  3. #3
    Membre � l'essai
    Inscrit en
    Juillet 2002
    Messages
    6
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 6
    Par d�faut
    Bonne id�e. Mon objectif est la mise en place d'un outil qui � partir d'une page �mettrice et d'un formulaire, puisse cr�er un bouton vers une autre page/formulaire (aspect de la nouvelle fen�tre devant �tre param�trable).

    Ce bouton devant : appeler 1 page 2, ex�cuter un script PHP dans une cible de la page (�ventuellement frame) et r�ceptionner les donn�es du formulaire de la page 1.

    A priori les param�tres du FORM de la page 1 rendent ceci possible, mais comment
    * tester si la page n'a pas d�j� �t� ouverte sans JS et opener ?
    * rendre param�trable l'aspect de la fen�tre 2 ?

  4. #4
    Membre � l'essai
    Inscrit en
    Juillet 2002
    Messages
    6
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 6
    Par d�faut Synchroniser le chargement de la fenetre fille et la suite de l'execution de la fenetre mere
    J'ai suppos� que le soucis provenait de la d�synchronisation du chargement de la fen�tre fille et de la suite de l�ex�cution ...

    Je n'ai pas r�ussit � utiliser un onload sur la fen�tre fille mais en testant sa variable de chargement je r�sous le probl�me sous FF. Toutefois Chrome ne fonctionne toujours pas de fa�on ad�quate.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    P_open[\"$nom_page\"]=window.open(\"$adrs1\",\"$nom_page\",\"$option\");
    while(! P_open[\"$nom_page\"])
    Peut �tre faut il faire patienter au del� de ce test ?

    J'ai aussi tent� de d�clarer une variable sur la fen�tre fille et d'en attendre la bonne ex�cution mais je suppose avec un code erron� :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    while (typeof P_open[\"$nom_page\"].flagOpen === \"undefined\") {var P_open[\"$nom_page\"].flagOpen=new Boolean(true);}
    Auriez vous un suggestion ?

  5. #5
    Membre � l'essai
    Inscrit en
    Juillet 2002
    Messages
    6
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 6
    Par d�faut
    Hello,
    J'ai tent� avec a et href sous JS, pas mieux (fonctionne sous IE mais pas sous FF et Chrome). J'ai l'impression que l'ouverture de fen�tre n'est effectu�e qu'� la fin du script et que du coup le submit avec target ne trouve pas sa cible et ouvre donc dans une nouvelle fen�tre/onglet ...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    if(typeof objLink==\"undefined\") {var objLink = new Object();}	
     
    objLink = document.createElement(\"a\");
    objLink.setAttribute(\"id\"	, \"$nom_page\");
    objLink.setAttribute(\"href\"	, \"$adrs1\");
    objLink.setAttribute(\"target\", \"_new\");
    objLink.setAttribute(\"title\"	, \"mon site\");
     
    this.form.appendChild(objLink);
     
    objLink.click();
    Je rappel que mon objectif est � partir d'un bouton d'ouvrir une fen�tre fille avec une structure d�finie (�ventuellement frame/iframe ou pas), d'y envoyer une s�rie de param�tre via un formulaire pr�c�dent (fen�tre m�re) sur une cible de la fen�tre fille (�ventuellement frame/iframe) et en y ex�cutant un script.

    Je crains de ne pouvoir utiliser uniquement les �l�ments PHP car dans ce cas je pourrais effectivement ouvrir la fen�tre fille (a et href) mais je perdrais la main sur l�ex�cution de la fen�tre m�re et ne pourrais d�clencher son submit ...

  6. #6
    Membre � l'essai
    Inscrit en
    Juillet 2002
    Messages
    6
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 6
    Par d�faut
    Je tente pour FF & Chrome de declencher le submit de la fenetre mere apres le chargement de la fenetre fille. Or ce chargement n'est effectif qu'apr�s l'ex�cution du script de la mere et donc son submit ...

    Pour cela je me positionne sur la fenetre fille et sur l'event onLoad je submit la fenetre mere :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    this.top.opener.document.forms["nom form fenetre mere"].submit()
    Cela semble (presque) fonctionner sous FF mais pas sous Chrome.


    Suis-je sur une bonne piste ou y-aurait-il une d�marche + simple ?

    Merci d'avance de votre attention.

  7. #7
    Membre � l'essai
    Inscrit en
    Juillet 2002
    Messages
    6
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 6
    Par d�faut
    Je confirme que le submit du FORM de la fen�tre m�re � partir de la fen�tre fille est une solution h�las lourde mais qui fonctionne.

    Merci � ceux qui ont eu la patience de me lire.

Discussions similaires

  1. Ouverture popup et envoi forms
    Par guilopouloos dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 21/08/2009, 15h33
  2. wx.frame avec forme personnalis�e et sans bordure
    Par atalon1 dans le forum wxPython
    R�ponses: 2
    Dernier message: 20/01/2009, 17h44
  3. Ouverture d'une popups avec un <form en plein centre de l'ecran
    Par mecmec dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 04/06/2007, 19h07
  4. Frame de forme adapatble
    Par kivan666 dans le forum Interfaces Graphiques en Java
    R�ponses: 5
    Dernier message: 17/03/2006, 08h18
  5. [Tiles]message d'erreur dans un footer (form mal rempli)
    Par clement42 dans le forum Struts 1
    R�ponses: 5
    Dernier message: 09/06/2005, 14h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo