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 :

Remplir un champ d'une fenetre a une autre


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 26
    Par défaut Remplir un champ d'une fenetre a une autre
    Bonjour,

    Je cherche a faire une page php qui s'afficherait dans un "popup" javascript. Sur cette page, le visiteur pourrait choisir par exemple une image, et le fait de cliquer sur celle ci fermerait le popup et remplirait un champ html avec le nom de la photo choisie.

    en gros, j'ai sur la page de base ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Choisir une photo : <input type="text" name="pictNameToChange" id="pictName" />
    <input type="submit" name="choosePic2" onclick="javascript:petitefenetre('selectPicture.php')" value="Choisir une image"/><br /><br />
    Note : la fonction javascript:petitefenetre se contente d'ouvrir le popup avec certains paramètres.

    Sur la page qui s'ouvre (selectPicture.php) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    <img src="images/MonImage14.jpg" alt="" name="MonImage14.jpg" onclick="returnValue()"/> 
    ...
    Que dois je mettre dans ma fonction returnValue() pour que le champs id="pictName" de la premiere page soit complété par "MonImage14.jpg" ?

    J'espere avoir été clair

  2. #2
    LEK
    LEK est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    715
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 715
    Par défaut
    Modifie l'appel de la fonction ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ...
    <img src="images/MonImage14.jpg" alt="" name="MonImage14.jpg" onclick="returnValue(this.name)"/> 
    ...
    et essaye cette fonction pour returnValue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function returnValue(val_image){
    window.opener.document.nomformulaire.pictNameToChange.value=val_image;
    self.close();
    }

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 26
    Par défaut
    Un grand merci, ca fonctionne

  4. #4
    LEK
    LEK est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    715
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 715
    Par défaut
    Pas de quoi

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 26
    Par défaut
    J'ai encore un ptit soucis du meme ordre.

    En fait, j'essaye de faire un ptit plugin pour l'éditeur de texte TinyMCE (dans le but de faire des dégradés de couleurs dans le texte).

    J'ai donc ce morceau de code dans une petite fenetre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <form method="post" name="contenu">
    Texte : <br /><textarea name="nodename1" style="width:100%;height:80px;" ><? echo $txt ?></textarea>			
    Rendu : <br /><div style="width:100%;height:80px;background-color:#FFFFFF;"><? echo $texte ?></div>
    <input name="nodename2" type="hidden" value="<? echo htmlentities($texte) ?>" />
    <input type="submit" name="genColor" value="Générer" onclick=""/><br />	<br />			
    Couleurs : <br /><input type="text" name="nodename3" style="width:100%;height:40px;" value="ff0000|ffa500|ffff00" readonly/>
    </form>
     
    <input type="submit" name="chooseColor" value="Ajouter une couleur" onclick="openPopColor();" />
    Si le bouton "Ajouter une couleur" est en dehors du form, c'est pour éviter qu'il recharge la page lorsque je clique dessus.

    Voici le contenu de openPopColor() :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    function openPopColor(){
    	window.open('popupColor.php','Ajouter_une_couleur', 'width=250, height=225, resizable=no, toolbar=false, scrollbars=yes, status=yes');
    }
    Sur la page "popupColor.php", j'affiche un certain nombre de couleurs selon un chouette script javascript. Voici le bouton pour confirmer l'ajout de la couleur sélectionnée:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="submit" onclick="submitForm();" value="Insérer couleur">
    et le code javascript qui va avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function submitForm(){
    	window.parent.contenu.nodename3.value = window.parent.contenu.nodename3.value + "|" + document.forms['recherche'].rgb.value;
    	window.close();	
    }
    Cette derniere fonction prend donc la valeur choisie (document.forms['recherche'].rgb.value) et la concatène avec le reste du champ précédent.

    Seulement, rien ne se passe... Quelqu'un pourrait-il m'aider ?

    Merci d'avance

  6. #6
    LEK
    LEK est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    715
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 715
    Par défaut
    Remplace ta fonction par celle-ci :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function submitForm(){
    	window.opener.document.contenu.nodename3.value = window.parent.contenu.nodename3.value + "|" + document.forms['recherche'].rgb.value;
    	window.close();	
    }
    La notation "parent" s'utilise dans une hierarchie de frame; Pour la relation entre une popup et la fenêtre qui la ouverte , tu dois utiliser : window.opener.

    Une dernière chose, dans ton cas, pour qu'un bouton ne raffraichisse pas le form : tu peux simplement lui donner le type "button" au lieu de "submit".

    Bon courage.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 26
    Par défaut
    un grand merci pour ton aide, ca fonctionne ^^

    Tu sais où je pourrais trouver un bon tuto pour enfin comprendre toute cette hiérarchie ?

    Merci encore

  8. #8
    LEK
    LEK est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    715
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 715
    Par défaut
    J'ai personnellement appris sur le tas, (en consultant deux trois bouquins de la bibli et en me forçant à coder tout et n'importe quoi au début); je ne saurais donc te conseiller un tuto plutôt qu'un autre. Cela dit ceux proposés sur ce site m'ont l'air pas mal ;-)

Discussions similaires

  1. Réponses: 6
    Dernier message: 28/01/2012, 17h56
  2. transmettre une variable d'une fenetre a une autre
    Par tix116 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 20/02/2009, 10h07
  3. insertion d'une fenetre dans une fenetre
    Par DeeVoiD dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 04/02/2009, 12h56
  4. Problème affichage d'une fenetre dans une fenetre
    Par zuzuu dans le forum Windows
    Réponses: 10
    Dernier message: 03/10/2007, 15h26
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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