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 :

[DOM] Copier un champ d'un formulaire à l'autre


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 3
    Points
    3
    Par défaut [DOM] Copier un champ d'un formulaire à l'autre
    Bonjour,

    J'ai des difficultés pour réaliser la manipulation suivante :

    - j'ai un formulaire dans une page HTML (appellons la page1).
    - une commande de cette page permet d'afficher une nouvelle page dans une nouvelle fenêtre qu'on appelera page2 (le formulaire initial n'est pas envoyé, page1 n'est pas fermée).
    - dans page2, qui contient uniquement du javascript, je souhaite créer (en javascript) un formulaire qui contient certains des champs du formulaire de page1. Mon problème est que je ne parviens pas à copier un champ du formulaire de page1 dans le formulaire de page2. La création attribut par attribut fonctionne mais mon problème est que je souhaite copier un champ de type file. Etant donné qu'il n'est pas possible d'affecter une valeur à un tel champ, je pense que la seule solution est de copier le champ d'un formulaire vers l'autre.
    J'ai essayé d'utiliser le DOM (fonctions importNode et cloneNode) mais sans succès.

    Quelqu'un a-t-il une idée ?

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    la commande qui ouvre l'autre page c'est quoi ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Il s'agit tout simplement d'une commande javacsript window.open. La page initiale n'est pas impactée.
    Je souhaite recréer, via javascript et DOM, le formulaire de la page principale dans la nouvelle fenêtre (pour soumettre ce formulaire et laisser tel quel celui de la page principale).

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var page2=window.open('blabla');
    et tu accèdes aux element de la popup depuis la page mère avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    page2.document.forms['nomform'].elements['nomelement'].value
    et de la popup vers la mère:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    self.opener.document.forms['nomform'].elements['nomelement'].value
    [/CODE]
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    merci mais j'utilise déjà ces fonctions.

    Mon problème est ciblé sur les champs de type file. Lorsque je veux recréer le formulaire de la page principale dans la fenêtre, je ne peux pas copier la valeur du champ de type file (impossible par un navigateur pour des raisons de sécurité). J'ai essayé de copier le innerHTML du formulaire original dans le formulaire de la fenêtre mais la valeur n'est pas transmise. Cela fonctionne bien pour tous les champs...sauf ceux de type file.
    Y-a-t'il une méthode pour faire cette manipulation (cloneNode par exemple) ou est ce tout bonnement impossible à réaliser ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Ha !
    précision d'importance ...
    Tu l'a découvert par toi même: il est impossible de renseigner la valeur d'un champs file pour des raisons évidentes de sécurité
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Je pensais pouvoir contourner le problème.
    Mon champ de type file existe et sa valeur est bien renseignée par l'utilisateur (dans le formulaire de la page principale). Puisqu'il n'est pas possible de le recréer automatiquement, j'espérais pouvoir copier ou dupliquer l'existant dans le nouveau formulaire (dans la nouvelle fenêtre).

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    je n'ai jamais tenté mais peut être avec un cloneNode(true) ...
    mais à mon avis le resultat sera identique

    tu peux cependant mettre un champs caché et y mettre la path récupéré ..
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. [DOM] Effacer un champ d'un formulaire
    Par jadorelescss38 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 04/04/2007, 22h37
  2. Réponses: 4
    Dernier message: 06/03/2007, 12h00
  3. copier une somme dans un formulaire à l'autre
    Par Daniela dans le forum IHM
    Réponses: 4
    Dernier message: 21/02/2007, 10h55
  4. Reprendre un champs d'un formulaire à l'autre
    Par liop49 dans le forum Access
    Réponses: 6
    Dernier message: 14/07/2006, 17h32
  5. Copier des objets d'un formulaire à un autre en VBA
    Par vincentdacol dans le forum Access
    Réponses: 1
    Dernier message: 24/04/2006, 14h18

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