Probléme avec un widows.opener [Résolu]

Signaler
Messages postés
249
Date d'inscription
jeudi 17 février 2005
Statut
Membre
Dernière intervention
29 août 2011
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Lo all

Donc depuis un popup (un calendrier), je change la value d'un champs texte ( id='Debut sejour' de la page opener) par la date cliqué.

Sur ce champs (id='Debut sejour'), j'ai un onChange avec un function (AffJour(debutsej, finsej)) qui va mettre le nom du jour de la date en value.

Probléme :

- si je change manuellement cette date, la function se lance!

-si elle est changé automatiquement par un popup elle ne se lance pas!

Donc je voudrai, par le popup la lancer apres avoir changer la date de id='Debut sejour' et avant de fermer celui-ci (close()).

Code actuel :
onClick="javascript:window.opener.document.getElementById(\''.$form_name.'\').value=\''.%s.'\'; windows.opener.AffJour(debutsej, finsej); self.close();"

Merci d'avance

Try to dodge my skill noob!

5 réponses

Messages postés
48
Date d'inscription
mercredi 14 janvier 2004
Statut
Membre
Dernière intervention
8 septembre 2005

Ton problème vient du fait que le onchange nécessite la perte de focus
pour ce lancer or quand tu changes la valeur par un
opener.getElement('...').value=mavaleur

l'élément ne prend pas le focus et donc pas de blur donc la fonction n'est pas lancée.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
bonjour,
=> et ça donne quelle erreur ?
[ sûr des noms ? Majuscules/minuscules ... ]
car "pas de raisons". @+
Messages postés
249
Date d'inscription
jeudi 17 février 2005
Statut
Membre
Dernière intervention
29 août 2011

je suis d'accord, mais jveut lance la function du opener depuis mon popup, et sa marche pas

onClick="javascript:window.opener.document.getElementById(\''.$form_name.'\').value=\''.%s.'\'; windows.opener.AffJour(debutsej, finsej); self.close();"

windows.opener.AffJour(debutsej, finsej); <- sa fonctionne sa?

sinon comment?

Try to dodge my skill noob!
Messages postés
249
Date d'inscription
jeudi 17 février 2005
Statut
Membre
Dernière intervention
29 août 2011

Merci a vous,

j'ai trouvé mon erreur

C'etait dans mes variables de la function que je ne précisais pas que c'etait eux aussi des objets de l'opener

windows.opener.AffJour(document.getElementById('Debut sejour'), document.getElementById('Fin sejour'));

alors que c'etait :

windows.opener.AffJour(window.opener.document.getElementById('Debut sejour'), window.opener.document.getElementById('Fin sejour'));

a+ sous l'bus

Try to dodge my skill noob!
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
tant mieux,
souvent, en posant une question
on résoud son problème, seul. @+