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 :

Envoi de formulaire puis fermeture popup


Sujet :

JavaScript

  1. #1
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut Envoi de formulaire puis fermeture popup
    Salut à tous,
    Pour un de mes projets j'ai réalisé une fenetre d'ajout d'un document sur laquelle je rentre des infos.
    Ce que j'aimerai faire via Javascript c'est de soumettre mon formulaire d'ajout puis fermer automatiquement la fenetre...
    Comment pourrais-je réaliser ceci ?
    Ce que j'imagines pour le moment en fait c'est de soumettre le formulaire puis de redirigier vers une page OK ou PAS_BON dans laquelle la balise onLoad contiendrait le script "parent.close()"
    Est-ce la bonne solution ?

  2. #2
    Membre expérimenté Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Points : 1 414
    Points
    1 414
    Par défaut
    A mon avis, cela dépends si tu veux controler la saisie ou pas.

    1/ si tu veux la controler en JS, il te suffit de faire un close() juste après le onsubmit() qui retourne true ou false.

    2/ si tu test la saisie avec php ou autre, ta méthode semble bonne.

    Ou est ton problème au fait ?
    ----
    L'avenir appartient à ceux dont les salariés se lèvent tôt.

  3. #3
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    Merci
    J'ai trouvé la solution ce matin et comme tu le dis je fais un test sur les champs via php et un script externe qui renvoi ensuite vers la page avec un paramètre OK ou PAS_BON et si c'est OK, alors la popup se ferme grâce à "self.close()" dans la balise body (onLoad).
    Merci quand même pour la réponse.
    A plus

    PS : Ce n'était pas un problème de codage mais plutôt un problème de conception à vrai dire...

  4. #4
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 451
    Points : 4 600
    Points
    4 600
    Par défaut
    salut, j'ai exactement le meme probleme que toi.. :/

    je suis débutant en JS, et je me suis quand meme penché sur les fonctions self.close et onLoad du body avant de poster ^^
    mais ca ne fonctionne pas :/

    j'ai essayé divers syntaxes, et celle ci me semble la plus proche de la réponse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <SCRIPT>function close1(){self.close('ma _page.html')}
    </script>
    <BODY bgcolor="#C0C0C0" onLoad="close1()")>
    voila, si quelqu'un pouvait m'aiguiller >_<
    merci d'avance
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  5. #5
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    Alors en fait :
    1. Tu soumets ton formulaire vers le script traitement.php via ton popup ;
    2. Si le traitement renvoi une erreur, tu rediriges vers ton popup avec les header et un paramètres que tu récupèreras par un $_GET['valid']="no" ;
    3. Sinon, tu renvoie vers le popup mais avec un paramètre $_GET['valid']="ok" ;
    Dans ton popup, ta balise <body> doit être capable via php de récupérer le paramètre $_GET['valid'] et si ce paramètre est à "ok", alors tu rajoutes dans cette balise l'attribut onLoad="javascript:self.close();"

    ca donne un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <body 
    <?php
    if(isset($_GET['valid']) && strcmp($_GET['valid'],"ok")==0)
    {
         echo 'onLoad=\"javascript:self.close();\"' ;
    }
    ?>
    >
    En espérant que ca t'aide

  6. #6
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 451
    Points : 4 600
    Points
    4 600
    Par défaut
    merci de ta réponse.
    oui ca m'aide (pour la syntaxe) mais non ca m'aide pas parcequ'il ne se passe rien :/

    peut-etre cela est dut au fait que j'utilises des frames (bouh, c'est moche je sais)

    context : je m'ennuis en cours, et du coup, j'ai codé un "tchat" pour le local.
    et ce tchat s'ouvre dans une popup avec une frame pour le rafraichissement des messages, et une autre pour la saisie du text

    et du coup, le self.close me "ferme" la frame de saisie de text mais pas la popup (ni l'affichage des messages).
    j'ai aussi essayé avec sefl.close('ma_page.html') mais ca change rien.
    et le self.close c'est pour le bouton "deco" qui envois des données a ma bdd puis est censé fermer la fenetre :/
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  7. #7
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    A ce moment la, tu peux ajouter dans la balise form un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onSubmit="self.close();"

  8. #8
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 451
    Points : 4 600
    Points
    4 600
    Par défaut
    ok, c'est bon. problème résolu.
    pour ceux que ca interesse : fermer une popup avec des frames => parent.close()
    c'est tout con, mais quand on le sait pas... >_<

    merci de ton aide rems033
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

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

Discussions similaires

  1. [HTML 4.0] Ouverture d'un popup après validation d'un formulaire puis retour à la page d'accueil
    Par ybezier dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 25/07/2010, 14h43
  2. fermeture popup après validation formulaire
    Par labucque dans le forum Langage
    Réponses: 5
    Dernier message: 30/06/2008, 09h34
  3. envoi formulaire POST vers popup
    Par Saintux dans le forum Général JavaScript
    Réponses: 17
    Dernier message: 25/01/2008, 14h00
  4. Rechargement d'un formulaire à la fermeture d'une popup
    Par GuardianForce dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/08/2007, 15h38
  5. envoi valeur formulaire vers popup
    Par Mat67 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/06/2007, 14h07

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