PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WEBDEV 2024 → La PopUp qui résiste encore et toujours à votre sagacité
La PopUp qui résiste encore et toujours à votre sagacité
Iniciado por Roumegou, jun., 08 2004 3:40 PM - 2 respostas
Publicado em junho, 08 2004 - 3:40 PM
Je fais appel à votre sens du défi.
Il n'est pas normal qu'à nous tous, ce problème n'ait pas encore vraiment
trouvé de solutions ???
Il y a beaucoup de threads sur ce NG là dessus mais il semblerait que l'on
est jamais allé jusqu'au bout.

Soit une page appelante :
Elle contient un formulaire.
Elle reçoit des paramètres.
Elle appelle une popup.
Soit cette popup.
elle contrôle les zones saisies
Elle réactualise dans la page appelante les zones qui ont été modifiées par
elle.
Elle revient à la page appelante.

.... et ceci sans message perturbant bien sûr.

Moi je tourne et retourne là dessus depuis trop longtemps. J'ai tenté
d'expliquer cela dans un howto sur la gestion de formulaires dynamiques et
c'est expliqué a l'adresse suivante :
http://www.4usinfo.com/perso/WWFormDyn.htm

Me reste le pb du raffraichissement dans la page appellante. (cf mon post
précédent sur les popup).

Voilà j'aimerai bien finaliser cette doc en résolvant ce problème.
Merci de votre aide.
Eric
Publicado em junho, 09 2004 - 11:42 AM
Si G bien tout compris, nous avons dans notre projet des formulaire de saisie
d'adresse, qui sont normalisé par un popup et rafraichie dans la page de
saisie.

Pour ce faire :

Un fonction global Navigateur qui verifie la presence de la page appelante
:
function renvoieresultat()
{
// La fenêtre appelante est-elle toujours ouverte ?
if (opener.closed)
{
alert('Le navigateur appelant a été fermé.');
return;
}
// Est-ce que le navigateur appelant a changé de page ?
if (opener._PAGE_ == null)
{
alert('Le navigateur appelant a changé de page.');
return;
}
// Affiche la date sur la page appelante (compilation dynamique du code
JS)
eval(sCodeJS);
// Fermeture du navigateur courant
self.close();
return;
}

Nous appelons notre popup avec un certain nombre de parametre (L'adresse
par ex) et notament le nom d'une fonction Nav de la page appelante qui met
a jour les résultat :
PROCEDURE reaffiche(ADR="")
{
Traitement de ADR...
}

Dans Notre Popup :

declaration global
sCodeJS="opener."+sProcedure+"(result_adr)" ou sProcedure est le parametre
contenant le nom de la procedure de la
page appelante

sCode est une global Contient donc une chaine Java, executable par eval dans
la Global Nav renvoieresultat.

On appelle renvoiresultat dans le bouton qui ferme le popup

Et Tout ce passe tres bien



"Roumegou" <ml.roumeg@4usinfo.com> wrote:

Je fais appel à votre sens du défi.
Il n'est pas normal qu'à nous tous, ce problème n'ait pas encore vraiment
trouvé de solutions ???
Il y a beaucoup de threads sur ce NG là dessus mais il semblerait que l'on
est jamais allé jusqu'au bout.

Soit une page appelante :
Elle contient un formulaire.
Elle reçoit des paramètres.
Elle appelle une popup.
Soit cette popup.
elle contrôle les zones saisies
Elle réactualise dans la page appelante les zones qui ont été modifiées

par
elle.
Elle revient à la page appelante.

... et ceci sans message perturbant bien sûr.

Moi je tourne et retourne là dessus depuis trop longtemps. J'ai tenté
d'expliquer cela dans un howto sur la gestion de formulaires dynamiques

et
c'est expliqué a l'adresse suivante :
http://www.4usinfo.com/perso/WWFormDyn.htm

Me reste le pb du raffraichissement dans la page appellante. (cf mon post
précédent sur les popup).

Voilà j'aimerai bien finaliser cette doc en résolvant ce problème.
Merci de votre aide.
Eric

Publicado em junho, 09 2004 - 3:15 PM
Merci,
Super tes explications.
Mais malgré elles, je n'arrive pas à les faire fonctionner dans mon cas
présent.

Comment ais-je adapté (et comment ais-je du merder !) :
- j'ai repris ta fn renvoieresultat que j'ai renommé en afterpopup et j'ai
suivi tes instructions sur les déclarations.
- je n'appelle pas afterpopup dans le bouton qui ferme le popup car j'ai du
trt à faire en code serveur, j'ai donc dans ce bouton
en code nav :
traitement de chp et màj d'un chps caché contenant une cde SQL
en code serveur
execution de la cde SQL
si ok Flag=2 sinon flag=1 (flag étant un champs caché pour gerer les
erreurs)

en onload de la popup code navigateur
SI Flag=2 ALORS
Flag=1
afterpopup()
FIN

Donc j'ai 2 pb :
le message "le navigateur appelant a changé de page". Donc je bloque avant
de retourner dans ma page appelante.

Ensuite, que dois je avoir dans la procédure Nav qui màj la page appellante.
je voulais récupérer en param un chps HTML, mais comme on me dit que je ne
peut l'utiliser en code navigateur.
Le pb, c'est que c'est un tableau contenant mes infos et générés par prog.
N'y a t-il pas une fn JS qui permettrait de provoquer l'affichage; le champs
ayant été màj depuis la popup ?

Merci de ton aide

"Christophe" <christophe.bar@edi.fr> a écrit dans le message de
news:40c6bf4d$1@news.pcsoft.fr...



Si G bien tout compris, nous avons dans notre projet des formulaire de

saisie
d'adresse, qui sont normalisé par un popup et rafraichie dans la page de
saisie.

Pour ce faire :

Un fonction global Navigateur qui verifie la presence de la page appelante
:
function renvoieresultat()
{
// La fenêtre appelante est-elle toujours ouverte ?
if (opener.closed)
{
alert('Le navigateur appelant a été fermé.');
return;
}
// Est-ce que le navigateur appelant a changé de page ?
if (opener._PAGE_ == null)
{
alert('Le navigateur appelant a changé de page.');
return;
}
// Affiche la date sur la page appelante (compilation dynamique du code
JS)
eval(sCodeJS);
// Fermeture du navigateur courant
self.close();
return;
}

Nous appelons notre popup avec un certain nombre de parametre (L'adresse
par ex) et notament le nom d'une fonction Nav de la page appelante qui met
a jour les résultat :
PROCEDURE reaffiche(ADR="")
{
Traitement de ADR...
}

Dans Notre Popup :

declaration global
sCodeJS="opener."+sProcedure+"(result_adr)" ou sProcedure est le parametre
contenant le nom de la procedure de la
page appelante

sCode est une global Contient donc une chaine Java, executable par eval

dans
la Global Nav renvoieresultat.

On appelle renvoiresultat dans le bouton qui ferme le popup

Et Tout ce passe tres bien



"Roumegou" <ml.roumeg@4usinfo.com> wrote:

Je fais appel à votre sens du défi.
Il n'est pas normal qu'à nous tous, ce problème n'ait pas encore vraiment
trouvé de solutions ???
Il y a beaucoup de threads sur ce NG là dessus mais il semblerait que

l'on
est jamais allé jusqu'au bout.

Soit une page appelante :
Elle contient un formulaire.
Elle reçoit des paramètres.
Elle appelle une popup.
Soit cette popup.
elle contrôle les zones saisies
Elle réactualise dans la page appelante les zones qui ont été modifiées
par

elle.
Elle revient à la page appelante.

... et ceci sans message perturbant bien sûr.

Moi je tourne et retourne là dessus depuis trop longtemps. J'ai tenté
d'expliquer cela dans un howto sur la gestion de formulaires dynamiques
et

c'est expliqué a l'adresse suivante :
http://www.4usinfo.com/perso/WWFormDyn.htm

Me reste le pb du raffraichissement dans la page appellante. (cf mon post
précédent sur les popup).

Voilà j'aimerai bien finaliser cette doc en résolvant ce problème.
Merci de votre aide.
Eric