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 :

Remplissage d'un input d'une fenetre a partir d'un submit d'une autre fenetre


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 39
    Points : 22
    Points
    22
    Par défaut Remplissage d'un input d'une fenetre a partir d'un submit d'une autre fenetre
    Bonjour,

    Voici tout d'abord mon contexte : je génère une fenêtre dans une partie de mon site après s'être identifié. Dans cette fenêtre se trouve un onload qui va générer en même temps une autre fenêtre (un agenda pour être précis ) avec un onload="open.window('agenda'...);". Dans cet agenda on peut valider des prises de rdv.

    Problème : Lors d'une saisie de rdv par le bouton submit dans l'agenda, je désire récupérer la date sélectionnée pour remplir un input de ma première fenêtre... je rappel que j'ai essayé avec window.opener et cela ma mis un message d'erreur... idem avec window.parent... voici mon test :


    onClick="javascript: window.opener.getElementById('date').value = document.getElementById('ztDateNote').value; return saisieOK(document.Form1);"


    Question simplifiée (enfin je pense ) : Comment faire transiter la valeur d'un getelementbyid('valeur_a_faire_transiter').value d'une page vers une autre après appui sur un submit...?

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Points : 1 419
    Points
    1 419
    Par défaut
    onClick="javascript: window.opener.document.getElementById('date').value = document.getElementById('ztDateNote').value; return saisieOK(document.Form1);"

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 39
    Points : 22
    Points
    22
    Par défaut
    Message d'erreur de firebug :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    window.opener has no properties
    onclick(click clientX=0, clientY=0)agenda.php (line 1)
    [Break on this error] <!DOCTYPE html public "-//w3c//dtd html 4.0 transitional//en">
    agenda.php (line 1)

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Points : 1 419
    Points
    1 419
    Par défaut
    Le message d'erreur signifie que window.opener n'existe pas, ce qui est étrange.

    La portion de script est-elle effectuée par la fenêtre ouverte ou par celle qui ouvre ? La page a-t-elle été changée entre le moment de l'ouverture de la fenêtre et l'envoi de la date à la fenêtre parente ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 39
    Points : 22
    Points
    22
    Par défaut
    Par la fenetre ouverte.
    La fenetre ouvrante contient mon input avec comme id "date". Mon agenda est phenix telechargeable ici : phenix.gapi.fr

    Voici le code de ma fenetre popup.php ouvrante :

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    <script type="text/javascript" src="scriptaculous.js"></script>
     
    	</head>
     
    	<body class="popup" style="margin:3px; background-color:#DDDDDD;" onLoad="window.resizeTo(480,650);window.moveTo(10,100);refresh_message();<?php if($infos_agenda=="on"){?>window.open('agenda','agenda','status=yes,scrollbars=yes,resizable=yes,width=910px,height=470px,dependent=yes,screenX=500,screenY=150');<?php }?>">
     
    <table class="ds_box" cellpadding="0" cellspacing="0" id="ds_conclass" style="display: none;">
    		<tr><td id="ds_calclass"></td></tr>
    		</table>
     
    		<?php  include("entete.php"); ?>
     
    		<?php 
    		$action = ''; $ids = '';
    		if ( isset($_GET['action']) ) $action = $_GET['action'];
    		if ( isset($_GET['ids']) ) $ids = $_GET['ids'];
    		switch ($action)
    		{
    			case "modifier":
    				include("modifier.php");
    				break;
    			case "retard":
    				include("annoncerRetard.php");
    				break;
    			case "changement":
    				include("changerRdv.php");
    				break;
    			case "changement_save":
    				include("changerRdv_save.php");
    				break;
    			case "annulation":
    				include("annulerRdv.php");
    				break;
    			case "configurer":
    				include("configurer.php");
    				break;
    			case "modifier_praticiens":
    				include("modifier_praticiens.php");
    				break;
    			case "password";
    				include("password.php");
    				break;
    			case "envoi":
    				include("envoi.php");
    				break;
    			default:
    				include("nouveaurapel.php");
    				break;
    		}
    		?>
     
    		<div style="text-align:right; margin:5px;">
    			<?php  
                            if ( ($action != "configurer") && ($action != "modifier_praticiens") )
                            {
                                    if ($action != "password") echo ('<input type="button" onClick="document.location.href=\'popup.php?action=password\';" value="Configuration" />'); 
                                    echo('<input type="button" onClick="window.resizeTo(300,110);" value="Réduire la fenêtre" />');
                            }
                            ?>
    		</div>
     
    	</body>
     
    </html>
     
    <?php 
            //Fermeture de la connection à  la BDD
            mysql_close();
    ?>
    En fait je fais appel a ma page "nouveau rappel.php" dans le switch($actions) de cette popup : c'est dans cette page ou est vraiment contenue mon input 'date'.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 39
    Points : 22
    Points
    22
    Par défaut
    Voici mon input dans mon fichier "nouveaurappel.php" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Date du rendez-vous :</td><td>
    				<input onclick="ds_sh(this);" name="date" id="date" readonly="readonly" size="30" />
    				<input type="hidden" name="date_week_day" id="date_week_day" />
    				<input type="hidden" name="date_day" id="date_day" />
    				<input type="hidden" name="date_month" id="date_month" />
    				<input type="hidden" name="date_year" id="date_year" />
    Le ds_sh est un calendrier petit format qui apparait lorsqu'on clique sur l'input. Mais désormais je voudrais que ce soit la date qui vient d'être enregistrée dans l'agenda qui remplisse ce input.

Discussions similaires

  1. orientation vers une autre fenetre a partir de celle courante
    Par moezsahli dans le forum Général Java
    Réponses: 2
    Dernier message: 14/08/2011, 19h32
  2. Réponses: 3
    Dernier message: 18/07/2007, 13h00
  3. Déclencher une fonction a partir d'un élément d'une liste
    Par la_praline dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 27/04/2007, 10h36
  4. Remplir une liste déroulante à partir d'un champ dans une pop up
    Par wiam26 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 23/08/2006, 16h42
  5. Réponses: 4
    Dernier message: 26/08/2004, 08h01

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