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 :

Dupliquer un formulaire


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 149
    Par défaut Dupliquer un formulaire
    Bonjour.
    Je voudrais pouvoir dupliquer mon formulaire afin de pouvoir créer autant d'objet que je veux sur une seule page. J'ai fait un code qui me permet de faire cela, mais n'étant pas adepte du javascript, j'ai peur que ce code ne soit pas "propre". Pouvez vous me donnez votre avis la dessus? Existe il un moyen plus simple?

    Voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
        ++nbBusiness;
     
    //Je récupère le code HTML de mon formulaire de base
        var businessForm = document.getElementById('associateBusiness0').innerHTML;
     
    //Je remplace les id de tous mes champs dans ce formulaire pour que ce dernier soit unique
        var newBusinessForm = businessForm.replace(/t_business_f_business_code0/g, "t_business_f_business_code"+nbBusiness);
        newBusinessForm = newBusinessForm.replace(/text_business_code0/g, "text_business_code"+nbBusiness);
        newBusinessForm = newBusinessForm.replace(/t_business_f_type0/g, "t_business_f_type"+nbBusiness);
     
    //Je remplace mes appel a mes fonctions JS
        newBusinessForm = newBusinessForm.replace(/businessChange\(0\)/g, "businessChange("+nbBusiness+")");
     
    //Je remplace l'id de la div qui contient le formulaire
        newBusinessForm = newBusinessForm.replace(/divTypeBusinessCode0/g, "divTypeBusinessCode"+nbBusiness);
     
    //Je crée une nouvelle div a la suite de la précédente, et je la remplis avec mon code modifié
        businessDiv = document.createElement("div");
        businessDiv.id = 'associateBusiness'+nbBusiness;
        document.getElementById('associateBusiness0').parentNode.appendChild(businessDiv);
        document.getElementById(businessDiv.id).innerHTML = newBusinessForm;
        businessChange(nbBusiness);

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Bonjour,
    une piste de recherche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var oForm = document.getElementById('associateBusiness0');
    var newForm = oForm.cloneNode (true);

Discussions similaires

  1. [AC-2000] Dupliquer un formulaire et sous-formulaire
    Par Dewas dans le forum VBA Access
    Réponses: 1
    Dernier message: 28/07/2009, 12h26
  2. [AC-2000] Dupliquer un formulaire et sous-formulaire
    Par Dewas dans le forum IHM
    Réponses: 1
    Dernier message: 22/07/2009, 20h46
  3. Comment dupliquer une formulaire avec sf
    Par Salsaboy60 dans le forum IHM
    Réponses: 11
    Dernier message: 02/03/2009, 22h14
  4. Dupliquer enregistrement formulaire basé sur une requête
    Par fredpeca dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 05/02/2007, 12h40
  5. Réponses: 3
    Dernier message: 21/07/2006, 16h49

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