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
    Candidat au Club
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Points : 4
    Points
    4
    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 éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 651
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 651
    Points : 11 145
    Points
    11 145
    Par défaut
    bonsoir,

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

  3. #3
    Candidat au Club
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Points : 4
    Points
    4
    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 éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 651
    Détails du profil
    Informations personnelles :
    Localisation : France

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

  5. #5
    Candidat au Club
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Points : 4
    Points
    4
    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 éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 651
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 651
    Points : 11 145
    Points
    11 145
    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
    Candidat au Club
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Points : 4
    Points
    4
    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