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 :

passer une variable à partir de dialogue à une fenêtre principal


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Par défaut passer une variable à partir de dialogue à une fenêtre principal
    Salut tout le monde
    Je dois passer une variable à une fenêtre principal à partir de la boîte de dialogue. Comme je ne pouvais pas trouver une manière appropriée comment faire cela, j'écris ce code et il travaille à 100% dans Firefox et Chrome, mais le problème, il ne fonctionne pas avec Internet Explorer!

    y at-il une autre façon de passer des variables avec Internet Explorer?

    code of main page
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <INPUT type="text" value="Click here" onClick="popupWindow = window.showModalDialog('contact.php');" onfocus="this.value=window['pseudo'].name ;">

    code of Dialog

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <body onbeforeunload="terminate();">
     
        <?php
            $salut=mysql_query('select  pseudo  from user');
            while ($user = mysql_fetch_array($salut))
    {       
            echo '<form>';
            echo '<INPUT type="checkbox" name="nom" value="' . $user['pseudo'] . '" id="' . $user['pseudo'] . '"  />';
            echo $user['pseudo'];
            echo '</form>';
    }
            ?>
        <script>
        function terminate()
    {
         var o = new Object();
          o.name="";
            var chbox=document.getElementsByTagName("input");
        for (i=0 ; i< chbox.length ; i++)
            {
                if (chbox[i].type=="checkbox" && chbox[i].checked==true) o.name = o.name+ chbox[i].value+";"; 
            }
     
                 window.opener['pseudo'] = o;
     
     
    }
        </script>
    </body>

  2. #2
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    bonsoir,

    je pense que ceci pourra répondre à ta demande :
    http://www.developpez.net/forums/d27...enetre-enfant/

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Par défaut
    merci le problème a été résolu, mais je pense que ce n'est pas l'idéal

    for main window
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title>Test</title>
        <style type="text/css">
        input {width: 220px;}
        </style>
    </head>
    <body onfocus=" document.getElementById('cum').value = oReturnValue.name">
    <FORM>
     <script>
     
     
      </script>
      <INPUT type="text" id="cum11" value="Click here00000" >
     
    <INPUT type="text" id="cum" value="Click here" onClick="redialog();" onFocus="reget();">
    <script>
        function redialog() 
    {
        
     oReturnValue = window.showModalDialog('contact.php',this,'dialogHeight:450px;dialogWidth:200px');
    }
        function reget()    
    {
      //// Internet Explorer
      var element = document.getElementById('cum');
     if ( !element.addEventListener)  document.getElementById('cum').value =oReturnValue.name;
     
    }
    </script>
    </FORM> 
     
    </body>
    </html>

    for child window
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    <?php
    include('config.php');
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title>hello</title>
        <style type="text/css">
        </style>
    </head>
    <body onbeforeunload="terminate();">
     
    	<?php
            $salut=mysql_query('select  pseudo  from user');
            while ($user = mysql_fetch_array($salut))
    {        
            echo '<form>';
            echo '<INPUT type="checkbox" name="nom" value="' . $user['pseudo'] . '" id="' . $user['pseudo'] . '"  />';
            echo $user['pseudo'];
            echo '</form>';
    }
            ?>
        <script>
        function terminate()
    { 
     
     var o = new Object();
         o.name="";
         var chbox=document.getElementsByTagName("input");
        for (i=0 ; i< chbox.length ; i++)
            {
                if (chbox[i].type=="checkbox" && chbox[i].checked==true) o.name = o.name+ chbox[i].value+";";  
            }
    //// Firefox Google Chrome............
     if (chbox[0].addEventListener)   window.opener.document.getElementById('cum').value  =o.name;
       //// Internet Explorer
       else window.returnValue=o;
          window.close();
     
    }
     
     
        </script>
    </body>
    </html>

  4. #4
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    En quoi ce n'est pas l'idéal ?

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Par défaut
    Citation Envoyé par Auteur Voir le message
    En quoi ce n'est pas l'idéal ?
    Il fonctionne, mais il ya quelques avertissement
    Détails de l’erreur de la page Web
    Message*: 'oReturnValue' est indéfini.
    Ligne*: 10
    Caractère*: 2
    Code*: 0
    URI*: http://localhost/Javascript/
    Message*: 'oReturnValue' est indéfini.
    Ligne*: 29
    Caractère*: 35
    Code*: 0
    URI*: http://localhost/Javascript/

  6. #6
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Sans doute parce que ta variable oReturnValue n'est pas déclarée convenablement. Ensuite, je te conseille de placer les scripts dans l'entête de la page HTML (<head>) et pas dans le corps de la page (<body>).

  7. #7
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Par défaut
    merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 21/04/2015, 15h46
  2. Contenu d'une variable devenant lui même une variable
    Par Copyright83 dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 14/11/2012, 17h24
  3. Réponses: 1
    Dernier message: 07/04/2011, 20h28
  4. Réponses: 1
    Dernier message: 26/12/2010, 21h20
  5. [Free Pascal] [2.2] Impossible d'assigner une variable de type T à une variable de type T
    Par Hibou57 dans le forum Free Pascal
    Réponses: 3
    Dernier message: 12/10/2007, 12h31

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