Se connecter / S'enregistrer
Votre question

Execution d'une fonction

Tags :
  • Script
  • Programmation
Dernière réponse : dans Programmation
21 Septembre 2007 07:19:42

Bonjour à tous !
J'ai une page avec des fonctions javascript. J'ai un script qui ouvre une page dans une div css. Cette div se comporte un peu comme une popup, sauf qu'elle est plus jolie...bref. Mon but et de fermer cette div (nouvelle page) et d'executer une fonction sur ma page initiale. J'ai la fonction pour fermer cette div, mais je n'arrive pas à executer une fonction sur ma page initiale à la suite de cette fermeture.
Je sais pas si vous m'avez compris... :sarcastic: 
Merci d'avanc epour votre aide ! :bounce: 

Autres pages sur : execution fonction

21 Septembre 2007 10:16:12

euh tu aurais un bout de code à nous montrer ou un lien pour voir ton script en fonctionnement !

Pour ma part je pense que si tu gères ton div comme une nouvelle page à sa fermeture tu envoie un flag par xmlhttprequest à ta page pour lui signaler la fin d'exécution du div et hop le tout repart comme en quarante
a c 232 L Programmation
21 Septembre 2007 10:47:25

Salut,

Je ne sais pas comment tu as mis ta fonction pour fermer ta div, mais ça doit être dans un attribut en javascript je suppose.
Donc à la suite de ta fonction pour fermer ta div, tu ajoutes ton autre fonction.

Exemple :
  1. <... onclick="fermerDiv(); autreFonction();" ...>
Contenus similaires
21 Septembre 2007 15:45:38

Merci déjà pour vos réponses. Voici la fonction qui ouvre la page dans une div :
  1. function dialogefam(month) {
  2. var larg1 = (document.body.clientWidth);
  3. larg2=(larg1/2)-270;
  4. setQueryString( );
  5. new Window({url: "formulaire.php?id=<? echo $id;?>", className: "alphacube", width:560, left:larg2,top:50, height:430}).show()
  6. WindowCloseKey.init();
  7. }

Cette fonction est lié à plusieurs script qui gère la "popup css".
Pour fermer formulaire.php, il se ferme après l'avoir validé avec la fonction suivante :
  1. top.Windows.close(top.Windows.focusedWindow.getId());

Il me reste juste à savoir comment executer la fonction sur la page d'origine. En fait cette fonction actualise une div dans ma page d'origine. Je pourrai simplement recharger ma page d'origine avec :
  1. var sURL = pagedorigine.php?id=<?php echo $id;?>';
  2. window.parent.location.href = sURL;

Mais le problème c'est que j'ai un formulaire et que tout ce qui sera déjà écrit dans les champs serra effacer...J'espère que j'ai pas trop tout mélangé.
Merci encore!
a c 232 L Programmation
21 Septembre 2007 16:14:50

As-tu fait ta fonction afin de recharger ta div sur la page d'origine ?

Si oui, tu appelles ta fonction juste après le top.Windows.close(top.Windows.focusedWindow.getId());

21 Septembre 2007 20:52:07

OmaR a dit :
As-tu fait ta fonction afin de recharger ta div sur la page d'origine ?

Si oui, tu appelles ta fonction juste après le top.Windows.close(top.Windows.focusedWindow.getId());

Le problème c'est que la fonction que je veux appeler est dans ma page d'origine. Si je l'appel de mon formulaire, j'ai une erreur, car il ne l'a trouve pas...
21 Septembre 2007 21:28:20

Excuse moi je n'avais pas lu en entier le message. En fait la fonction top.Windows.close(top.Windows.focusedWindow.getId()); est dans le formulaire. Je n'arrive pas à excuter la fonction de ma page d'origine suite à la fermeture de mon formulaire
21 Septembre 2007 22:03:11

moi je revient avec mon idée tu met ta page principale en attente et au lieu de fermer ta page depuis ton div
a la fin du div tu répond à ta page principale elle reprend l'exécution de ses fonctions et sa première fonction est de fermer l'autre page !
21 Septembre 2007 22:56:07

Mais comment passer d'une page à l'autre ? Pour fermer de ma page principale, il faut que je puisse l'atteindre depuis mon formulaire, non?
21 Septembre 2007 23:21:47

Est-ce que tu peux me m'expliquer un peu comment faire. J'avoue être un débutant en javascript. Je sais agir sur une div ou une autre page qui est elle même dans ma page. Mais je ne vois pas dans mon cas comment utiliser l'httprequest..
Merci d'avance !
21 Septembre 2007 23:25:06

il y a un truc que je pige pas, t'as un iframe dans ton div?
parce que hors iframe, tout ce qui est contenu dans ta div est pareil que ce qui est sur ta page "principale", en fait c'est une seule page, alors c'est quoi le souci?
ou alors il y a un truc qui m'échappe (faut que je me redocummente sur le javascript?)

tu as un exemple de page accessible sur le net?
21 Septembre 2007 23:30:42

coca25 a dit :
il y a un truc que je pige pas, t'as un iframe dans ton div?
parce que hors iframe, tout ce qui est contenu dans ta div est pareil que ce qui est sur ta page "principale", en fait c'est une seule page, alors c'est quoi le souci?
ou alors il y a un truc qui m'échappe (faut que je me redocummente sur le javascript?)

tu as un exemple de page accessible sur le net?

En fait, non ce n'est pas une iframe, c'est bien une nouvelle page dans une div. J'ai pris le code sur ce site : http://prototype-window.xilinus.com/samples.html
(Lien 2. Open a window with an URL inside )
21 Septembre 2007 23:43:31

c'est bien une iframe :p 
un instant, j'ai eu peur :sarcastic: 

pour exécuter une fonction, il suffit de l'appeler avec:
parent.fonction ();
21 Septembre 2007 23:51:45

Autant pour moi. Si j'ai bien compris, c'est une iframe dans une div. Alors peut-être ça simplifiera pouré résoudre mon problème, non?
21 Septembre 2007 23:52:29

j'ai édité mon précédent post
22 Septembre 2007 00:00:08

coca25 a dit :
j'ai édité mon précédent post

C'était super simple !!!
Merci beaucoup pour le temps passé !!!! :bounce:  :bounce:  :bounce: 
13 Décembre 2009 18:22:49

Bonjour,

J'ai un peu le même soucis que yoyo.

J'ouvre depuis ma page principale une window avec une url qui sert a télécharger des fichiers, elle contient donc des div un form et une Iframe pour gérer le download.

Au téléchargement je fabrique les thumbs qui vont bien il me reste plus qu'a faire un refresh du div contenant les thumbs sur ma page principale et là problème mon identifiant de div n'est pas dans le contexte et je ne sais pas pourquoi ?

J'ai donc fait une fonction ajax qui fait le refresh et je l'ai mis dans le js de ma page principale. J'ai fait un lien javascript:refreshfiles(). La fonction fonctionne depuis la page principale.

Dans mon script de download, après avoir réalisé la requette ajax, je fais un appel vers cette fonction refreshfiles elle est bien appellé, j'ai mis un alert au début de la fonction, par contre dès que j'essaie d'accéder à mon div via son ID, javascript ne trouve pas l'objet.

Quelqu'un peut il m'aider ?




13 Décembre 2009 19:56:30

Bon finalement j'ai fait un alert document.body.innerHTML pour voir ou j'étais

du coup le bon adressage ce fait par :

window.parent.document.getElementById('filesdwn').innerHTML

Pour ceux qui auront eu la gentillesse de lire mon post
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS