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 :

Javascript et les pop up


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 15
    Points : 7
    Points
    7
    Par défaut Javascript et les pop up
    Bonjour,

    Ce que je recherche à faire, c'est avoir une pop up qui s'ouvre, quand je clic sur un lien de ma page mère... Dans ce pop up, il y aurait un formulaire, et quand on clic sur le bouton d'envoi du formulaire, la pop up se ferme, les informations du formulaire sont envoyés à la page mère, qui est actualisée, afin de traiter les données reçues...

    Au niveau de ma pop up, j'ai essayé de mettre ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form action="maPageMere.php" method="POST" target="parent">
    Mais ça ouvre une nouvelle fenêtre... (avec bien l'adresse de la page mère!)
    J'aimerais donc savoir comment faire pour que ce soit bien la même page mère qui soit rechargée...Et pas une autre qui soit ouverte...

    J'ai aussi essayé de mettre ça sur ma page de pop up...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a href="#" onclick="javascript:window.opener.close();">fermer</a>
    <a href="#" onclick="window.opener.close()">fermer</a>
    <a href="#" onclick="javascript:window.opener.reload();">recharger</a>
    Mais quand je clic, il ne se passe absolument rien... :s

    Je n'arrive pas à comprendre ce que je fais de mal :s. D'après tout ce que j'ai lu... Ça devrait marcher :s Mais je n'y arrive pas :s

    Merci!

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut

    onclik attend une fonction ou instruction javascript, donc tu ne dois pas mettre "javascript:".
    Je ne pense pas que tu puisses fermer la fenêtre parent depuis le popup (à part IE).
    reload est une methode de location mais pas à window.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" onclick="window.opener.location.reload();">recharger</a>

  3. #3
    Futur Membre du Club
    Inscrit en
    Août 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Merci,
    En effet, ça marche mieux comme ça =)
    Ça me rassure plus ou moins... Y'a au moins quelque chose qui marche !

    Mais j'aimerais savoir comment je peux transmettre les données du formulaire, quand je clique sur envoyer, vers la page mère... Enfin en la rechargeant, et pas en ouvrant une nouvelle...
    (Enfin je pense pouvoir le faire en envoyant les données en GET en changeant l'adresse de la page mère... Mais je me dis qu'il y a surement plus simple...!)

    Enfin en tout cas, merci beaucoup =)

  4. #4
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Citation Envoyé par Julie95220 Voir le message
    (Enfin je pense pouvoir le faire en envoyant les données en GET en changeant l'adresse de la page mère... Mais je me dis qu'il y a surement plus simple...!)
    Ton raisonnement est bon a priori, et ce n'est pas trop difficile à mettre en place tu n'auras plus besoin d'appeler reload, mais avec une petite transformation de chaine ca devrait aller bien :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // var params = ... typiquement en sérialisant les input de ton formulaire 
    // (si jamais tu utilises un framework ça devrait se faire en une seule 
    // instruction, sinon ça se fait "à la main" sans trop de difficultés)
    window.opener.location = window.opener.location + "?" + params;

    ...pour les linguistes et les curieux >>> générateur de phrases aléatoires

    __________________

  5. #5
    Futur Membre du Club
    Inscrit en
    Août 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Et bien je vais faire ça alors =)
    Je me disais juste qu'il y avait... peut être... Genre juste un truc à écrire dans la balise form, et ça se faisait tout seul :p

    Enfin en tout cas, merci pour l'aide =)

  6. #6
    Membre éprouvé Avatar de sebhm
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2004
    Messages
    1 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 090
    Points : 1 241
    Points
    1 241
    Par défaut
    bonjour,

    en fait, je vois plusieurs alternatives à ta question:


    1.
    soit tu modifie l'url de ta page comme te l'explique RomainValeri
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.opener.location = window.opener.location + "?" + params;
    2.
    soit tu as dans ta page mere le formulaire caché
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" id="champ1_papa" />
    et tu le renseignes depuis ta popup
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.opener.document.getElementById("champ1_papa")=document.getElementById("champ1_popup")
    3.
    soit tu enregistres directement lors de la validation de ta popup, et tu n'as plus qu'à rediriger ta page mere où tu veux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.opener.location = ton_URL;

  7. #7
    Futur Membre du Club
    Inscrit en
    Août 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    J'ai fait ça avec la première méthode, et ça marche nikel =)

    Ça fait plaisir, j'ai fini mon truc, plus que du CSS à faire et c'est tout =p

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utilité de javascript dans les applications web
    Par Skan dans le forum Général JavaScript
    Réponses: 26
    Dernier message: 30/12/2005, 22h55
  2. fermer les pop up si le parent est fermé
    Par grinder59 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/12/2005, 05h26
  3. [JAVASCRIPT] Ignorer les demandes de confirmation du navig.
    Par sempire dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 10/10/2005, 14h31
  4. Norme JavaScript pour les formulaire
    Par rdams dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 23/09/2005, 14h14
  5. [JSP][javascript]lier le javascript et les jsp
    Par deldin dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 20/08/2004, 11h54

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