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 :

[Form et popup] target d'un form ouvert dans une popup


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 44
    Par d�faut [Form et popup] target d'un form ouvert dans une popup
    Bonjour

    J'ouvre un popup depuis une page (une frame) et j'aimerais que le resultat du formulaire qui s'y trouve soit affich� dans la frame qui a ouvert le popup.

    Je pense que c'est un probleme de target du formulaire.

    J'ai essay� de creer une fonction associ�e a l'evenement onClick du submit du formulaire :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    function redir()
    {
     document.monFormulaire.target=window.opener;
    }
    mais ca n'a pas l'air de fonctionner. Peut-etre que target est en lecture seule.

    J'ai regard� attentivement des posts relatifs a ce sujet, mais �a ne correspondait pas a ce que j'attendais.

    Voyez vous comment je pourrais faire �a?

    Merci.

    Florian

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 44
    Par d�faut A l'aide!
    J'ai beau tout essayer, ce ne fonctionne pas.

    Vous voyez une raison pour que
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    document.monFormulaire.target=window.opener;
    ne fonctionne pas?

    Au lieu de m'afficher le resultat dans ma fenetre principale, il m'ouvre une nouvelle fenetre.

    J'en ai marre de buter la dessus, est ce que quelqu'un peut m'aider?

    Florian

  3. #3
    Membre exp�riment� Avatar de hunter
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    208
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2004
    Messages : 208
    Par d�faut
    j'ai pas test� mais la ce qui ce passe c'est que lorsque tu presse sur le submit �a touvre une nouvelle page c'est �a ??? avec rien dedans

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 44
    Par d�faut
    oui, j'avais une fenetre navigateur qui s'ouvrait (avec le contenu de action=).

    J'ai trouv� le solution depuis, c'est tout simple.
    Il suffit de nommer la fenetre appelante avec self.name='nom_choisi' par exemple.
    Ensuite, dans la popup, il faut mettre
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    < form ... target='nom_choisi'>
    car target prend un string et pas un objet window.
    Le tour est jou�, le resultat de la requete du formulaire s'affiche dans la page appelante.

    J'ai trouv� en trifouillant sur internet. C'�tait pas compliqu�!

    Merci tout de m�me.

    A plus.

    Florian

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    36
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 36
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <form action="../../index.php" onSubmit="window.close();" name="monForm" method="post">
     
      <input type="submit" value="OK">
     
    </form>
     
    <script type="text/JavaScript"> 
     
      window.opener.name = "openerName" ;
     
      document.monForm.target = window.opener.name ;
     
    </script>
    8)

  6. #6
    Membre confirm�
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 105
    Par d�faut
    merci pour la r�ponse Dark.
    J'avais test� cette solution:

    dans la fen�tre appelante:
    dans la fenetre fille (popup):
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    function valider(){
            document.form1.target = window.opener.name ;
            document.form1.submit();
            self.close();
    }
    mais cel� provoquait un probleme lorsque j'avais 2 onglets de la m�me page (les deux onglets �taient r�actualis�s avec le contenu du formulaire!!)

    Visiblement ta fonction marche sans souci:
    dans la fenetre fille (popup):
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    function valider(){
            window.opener.name="parent_name"; 
            document.form1.target = window.opener.name ;
            document.form1.submit();
            self.close();
    }

  7. #7
    Membre confirm�
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 105
    Par d�faut
    Correction faite, les deux versions provoquent les m�mes problemes.

    Avec le jeu d'essai suivant:
    1- on ouvre la page principale (quon nommera 1), on lance louverture de la popup, on valide le formulaire dans la popup : ce dernier est envoy� avec comme cible la fen�tre principale 1 .
    2 - On ouvre la m�me page sur un deuxi�me onglet (uq'on nommera 2), on effectue les m�mes op�rations, et la cible est l'onglet 1 !!
    3 - On garde la configuration pr�c�dente, et on lance la popup � partir de l'onglet 1: lorsqu'on valide le formulaire, il est envoy�... sur l'onglet 2 !!!

    Vous avez le m�me probleme chez vous ou �a vient de moi?
    �a peut surement provenir du fait que je donne le m�me nom � mes fen�tres parentes, mais �a m parait bizarre...

    Je vais tester en nommant la fen�tre parente avec un nom al�atoire pour voir si �a change quelque chose (et je vais aussi tester sous IE pour voir le r�sultat qu j'obtiens).

  8. #8
    Membre confirm�
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 105
    Par d�faut
    Bon ben le probl�me viendrais de ma supposition et semble �tre corrig� en nommant la fen�tre parente al�atoirement:
    dans le popup on aura donc une fonction de validation appel�e par un onclick sur un boutton (par exemple):
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <SCRIPT LANGUAGE="JavaScript">
    <!--
     
    function valider(){
            window.opener.name=Math.floor(Math.random()*100)+1;
            //au lieu de :
            //window.opener.name="nom_fenetre_parente";
            document.form1.target = window.opener.name ;
            document.form1.submit();
            //window.opener.focus();
            self.close();
    }
    -->
    </SCRIPT>
    J'ai mis un random 100 pour avoir une plus faible probabilit� d'avoir un m�me nom, mais on doit pouvoir le r�duire.
    Si je ne me trompe pas, l'attribut name sert juste a identifier une fen�tre et n'a aucun rapport avec un titre de fen�tre ou autre, donc un nom al�atoire n'aura pas d'effet.

    Autre probl�me, si on veut ouvrir plusieurs popup � la fois, il faudrait plutot que la fenetre parente se nomme elle-m�me, et transmettre ce nom a toute popup "fille" ouverte par la suite.

    Derni�re petite question:
    la ligne "window.opener.focus();" ne semble pas fonctionenr dans une fen�tre avec plusieurs onglets, quelqu'un connait-il la parade?

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 0
    Dernier message: 21/11/2014, 17h00
  2. R�ponses: 3
    Dernier message: 27/02/2012, 15h36
  3. User Form : Peut-on cacher ce qu'on �crit dans une zone (Mot de passe)
    Par Godzestla dans le forum Macros et VBA Excel
    R�ponses: 2
    Dernier message: 09/09/2008, 11h22
  4. form dans une popup
    Par amika dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 25/05/2005, 16h06

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