Communication entre Fenetres Javascript [Résolu]

MasterCent 83 Messages postés jeudi 22 septembre 2005Date d'inscription 14 décembre 2011 Dernière intervention - 19 mai 2008 à 15:50 - Dernière réponse : MasterCent 83 Messages postés jeudi 22 septembre 2005Date d'inscription 14 décembre 2011 Dernière intervention
- 19 mai 2008 à 18:14
Niveau : AVANCE !

Bonjour,

Mon problème est simple (a énnoncer) :
Dans un navigateur (firefox), sous javascript, une fenetre A  ouvre une autre fenetre B.
Je désire informer B que celle qui l'a ouvert est A, afin que B puisse appeler une fonction de A (ou plus exactement de son "créateur").
Car, évidemment, si c'est C qui a ouvert B, B devra appeler la fonction dans C.

Je pensais à une solution du type :




// dans le script ouvrant ( A ou C ):
function ouvrir () {

    B = window.open ( "b.html" , "B" ) ;
    B.addParent ( self ) ;

}

// Dans B, la fonction addParent serait du genre :
var parent ;
function addParent ( oParent){
    parent = oParent ;
}

// dans B, appel de la fonction
 parent.Event (... )  // avec Parent pouvant valoir A ou C selon celui qui a crée B



J'arrive à bidouiller  quelquechose, mais j'ai entre autres des problème de synchronisation, 
et des fonctions qui ne sont pas reconnue si je ne déclare pas document.addParent = addPrent; etc...
A terme, je souhaite pouvoir travailler avec des collection de "Listenner"

Qui a une idée ?

Merci
Ph. 

Ps : pour completer l'info, il s'agit d'interfacer des tables d'une DB,
Une fenetre me permettant de modifier un champ Foreygn Key d'une autre table.
 
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 19 mai 2008 à 15:55
3
Merci
Bonjour,
>>
ans un navigateur (firefox), sous javascript, une fenetre A  ouvre une autre fenetre B.
>>Je désire informer B que celle qui l'a ouvert est A, afin que B puisse appeler une fonction de A

    le pop-up s'adresse à la page qui l'a créée par window.opener

    une fonction de A ? : window.opener.function_de_a(paramètre);

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]

Merci cs_bultez 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de cs_bultez
MasterCent 83 Messages postés jeudi 22 septembre 2005Date d'inscription 14 décembre 2011 Dernière intervention - 19 mai 2008 à 18:14
0
Merci
Je pense que ca va vraiment m'aider. Grand Merci.

Ph.

    function Ouvre (strUrl){
        tmp = window.open ( strUrl , "B" ) ;
    }

    function Repond ( objFils , arg ) {
        alert ( arg ) ;
    }

    function Appel ( arg ) {
        window.opener.Repond ( self , arg ) ;
    }
Commenter la réponse de MasterCent

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.