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] afficher un input dans un formulaire


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 354
    Par défaut [DOM] afficher un input dans un formulaire
    Bonjour ,
    J'apprend actuellement le javascript + dom et j'ai parcouru quelques tutos mais je bloque sur l'application.
    Je veux faire une petite fonction qui m'affiche lorsque je clique sur un lien un bouton de type texte à l'intérieur de mon formulaire et bien sûr rien ne s'affiche.Pouvez vous mez dire où je me suis trompé.

    Autre question : y a t il un moyen d'afficher les messages d'erreur sous javascript.Pour savoir à quel niveau notre fonction plante.
    Merci d'avance

    Voici le code de mon formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
      <form id="form1" action="test.php" method="post">
     
                <a href="" id="monLien" value="Cliquez ici pour afficher l'input" onclick="Afficher(monLien,form1);">
                    Cliquez ici pour afficher l'input
                </a>
     
            </form>
    voici le code de ma fonction
    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
    23
    24
    25
    26
    27
     
      function Afficher(x,y)
               {
                // au clic on crée un element texte
     
               var text = document.createElement("input") ;
               text.setAttribute("type","text") ;
               text.setAttribute("id","monInput") ;
               text.setAttribute("value","l'input qui venait de loin");
     
                // On l'ajoute au formulaire On va utiliser insertBefore
     
                // Il faut récupérer la représentation Dom de la balise de nom monLien
     
                var monlien = document.getElementById("x") ;
     
                // Il faut aussi récupérer l'équivalent Dom du formulaire
     
                var monFormulaire = document.getElementById("y") ;
     
                // On utilise insertBefore pour entrer l'input
     
                monFormulaire.insertBefore(monlien,text);
     
             //   document.body.x.appendChild(text) ;
     
               }
    Voici le code de ma page en entier

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     
            <script language="Javascript">
     
               function Afficher(x,y)
               {
                // au clic on crée un element texte
     
               var text = document.createElement("input") ;
               text.setAttribute("type","text") ;
               text.setAttribute("id","monInput") ;
               text.setAttribute("value","l'input qui venait de loin");
     
                // On l'ajoute au formulaire On va utiliser insertBefore
     
                // Il faut récupérer la représentation Dom de la balise de nom monLien
     
                var monlien = document.getElementById("x") ;
     
                // Il faut aussi récupérer l'équivalent Dom du formulaire
     
                var monFormulaire = document.getElementById("y") ;
     
                // On utilise insertBefore pour entrer l'input
     
                monFormulaire.insertBefore(monlien,text);
     
             //   document.body.x.appendChild(text) ;
     
               } 
     
     
            </script>
     
      </head>
      <body>
     
      <!-- On crée un formulaire -->
     
            <form id="form1" action="test.php" method="post">
     
                <a href="" id="monLien" value="Cliquez ici pour afficher l'input" onclick="Afficher(monLien,form1);">
                    Cliquez ici pour afficher l'input
                </a>
     
            </form>
     
      </body>
    </html>
    Merci

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="Afficher('monLien','form1');return false"
    Pour les messages d'erreur, télécharge Firebug pour FF.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Autre erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var monlien = document.getElementById(x) ;
     
                // Il faut aussi récupérer l'équivalent Dom du formulaire
     
                var monFormulaire = document.getElementById(y) ;
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 354
    Par défaut
    OK je teste tout ça.
    Merci

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 354
    Par défaut
    Bonjour ,
    J'ai téléchargé et installé l'extension firebug.Il me reste plus qu'à lire un petit tuto sur son utilisation.
    Pour le programme de test merci pour les modifs :
    Mais en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monFormulaire.insertBefore(monlien,text);
    rien ne s'affiche
    Par contre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monFormulaire.appendChild(text);
    fonctionne très bien
    Est ce que tu peux m'expliquer le coup du return false après le onclick.

    Merci

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 354
    Par défaut
    J'viens d'avoir ma première étoile

Discussions similaires

  1. ajout de champs input dans un formulaire
    Par MV1908 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/08/2006, 18h31
  2. Comment lier une combobox à un input dans un formulaire?
    Par MisterCool dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 28/06/2006, 15h12
  3. Afficher une table dans un formulaire
    Par noob_vba dans le forum IHM
    Réponses: 8
    Dernier message: 20/06/2006, 16h54
  4. [DOM] DOM afficher un input avec du texte dedans
    Par NeHuS dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 28/01/2006, 22h41
  5. Problème pour afficher un contrôle dans un formulaire
    Par JahRastafari dans le forum IHM
    Réponses: 5
    Dernier message: 16/06/2005, 10h15

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