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] Supprimer des champs text


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 379
    Par défaut [DOM] Supprimer des champs text
    Salut,

    Messieurs les experts en Javascript! J'ai besoin de votre créativité, non seulement je suis trés débutant en javascript, mais de plus ma créativité est trés limité dans ce domaine. voici la problèmatique:

    Dans une de mes pages, j'ai un bouton nommé "Ajouter un logiciel" qui à chaque fois qu'on clique dessus, un champs text (input) s'ajouter dans lequelle on peux rentrer le nom d'un logicie. vu que le nombre de ces logiciels n'est pas connu en avance, alors à chaque fois qu'on cliquera sur ce bouton, un champs s'ajouter et cela infiniment.

    Dans une autre page, j'ai formulaire de modification, qui est initialisé par les valeurs stocké dans ma base de données (fichier XML) donc si par exemple dans ma base de données se trouvent dans un noeud 2 logiciels appelés respectivement "1" et "2", dans le formulaire de moficiation, on trouvera le bouton "ajouter un logiciel" qui est encore là au cas ou la personne veux encore ajouter des logiciels, avec au dessous de ce boutton, deux champs text, le premier qui contient "1" et le deuxième qui contient "2"

    le script qui effectue ces operations est le suivant :
    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
    <script type="text/javascript">
     
    	var ide=0;
     
    	function newid(idd)
     
    	{
     
    		ide=idd;
     
    	}
     
    	function ajouteInput()
     
    	{
     
    		var parent = document.getElementById("log");//conteneur
     
     
     
    		var input = document.createElement("input");//le input
     
    		var br = document.createElement("br");//un retour à la ligne
     
     
     
    		input.type= "text";//type de l'input
     
    		input.id="logiciel"+ide;
     
    		input.name = "logg"+ide;
     
    		parent.appendChild(input);
     
    		parent.appendChild(br);
     
    		ide++;
     
    	}
     
    </script>
    Je veux ajouter la fonctionnalité, de pouvoir supprimer un des champs qui s'affichent dans le formulaire de modification, pour l'exemple évoquée précédemment, si par exemple je veux supprimer le logiciel portant le nom "2", et donc je veux supprimer le champs text contenant cette valeur "2" . Je ne trouve vraiment de solutions (vous voyez ma créativité limitée )

    Donc veuillez svp m'aider à résoudre ce probème !


    Merci



    ...

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 63
    Par défaut
    Salut ,

    Je pense pas que ce soit si dur

    En fait faudrait que tu fasses une balise avec un ID et dedans un champ text

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var id = 0
    document.write("<div id='idtext"+id+" '><input type='text'></div>");
    Ensuite après tu peux toujours faire une fonction pour effacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function effacerchamp(id)
    {
    document.getElementById("idtext" + id).innerHTML='';
    }
    Donc après tu peux adapter un bouton effacer lors de l'ajout du champ

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var id = 0
    document.write("<a href='javascript:;' onclick='effacerchamp("+id");'>del</a> <div id='idtext"+id+" '><input type='text'></div>");
    En espèrant que ces bouts de codes pourront t'être utiles.

  3. #3
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 379
    Par défaut
    Merci pour ta réponse!

    Mais j'ai des questions, ce bout de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.write("<a href='javascript:;' onclick='effacerchamp("+id");'>del</a> <div id='idtext"+id+" '><input type='text'></div>");

    je le mets ou ? (sachant que mon code est écrit en php, dans lequel je fais appel à des script javascript)

    De plus la fonction supprimer, comment elle va savoir c'est lequel des champs que je veux supprimer,je sais avec l'id, mais comment avec un simple boutton je vais passer à cette fonction la valeur de l'id du champs à supprimer ?


    Merci



    ...

  4. #4
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 379
    Par défaut
    bon voici ce que je vais essayer de faire:

    A coté de chaque input text, il y aura un checkbox, et tous les checkbox cochés seront supprimés avec les champs text qui viennent avec encliquant sur le boutton supprimer qui fait appel au script de suppression.

    le problème, c'est ce que j'ai fait le code pour ajouter le checkbox, mais ca ne s'ajoute pas et j'ignore la raison!

    je vous montre mon 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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    	function ajouteInput()
     
    	{
     
    		var parent = document.getElementById("log");//conteneur
     
     
     
    		var input = document.createElement("input");//le input
    		var checkb = document.createElement("input");//on ajoute un checkbox pour la suppression
     
    		var br = document.createElement("br");//un retour à la ligne
     
     
    		checkb.type="checkbox";
     
    		input.type= "text";//type de l'input
     
    		input.id="logiciel"+ide;
    		checkb.id="logiciel"+ide;
     
    		input.name = "logg"+ide;
    		checkb.name= "check"+ide;
     
    		parent.appendChild(input);
    		parent.appendChild(checkb);
     
    		parent.appendChild(br);
     
    		ide++;
     
    	}
    Il n'y a que le champs text qui s'affiche :s


    Aidez moi svp!



    ...

  5. #5
    Membre expérimenté Avatar de marts
    Inscrit en
    Février 2008
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 233
    Par défaut
    Citation Envoyé par Mo_Poly Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    		input.id="logiciel"+ide;
    		checkb.id="logiciel"+ide;
    utilises 2 id différents.

  6. #6
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    ton code fonctionne très bien :
    Code html : 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
    55
    56
    57
     
    <html>
    <head>
    <title></title>
     
    <script type="text/javascript">
    <!--
    var ide=0;
    function ajouteInput()
     
            {
     
                    var parent = document.getElementById("log");//conteneur
     
                    
     
                    var input = document.createElement("input");//le input
                    var checkb = document.createElement("input");//on ajoute un checkbox pour la suppression
     
                    var br = document.createElement("br");//un retour à la ligne
     
                    
                    checkb.type="checkbox";
     
                    input.type= "text";//type de l'input
     
                    input.id = "InpLog"+ide;
                    checkb.id = "ChkLog"+ide;
     
                    input.name = "logg"+ide;
                    checkb.name= "check"+ide;
     
                    parent.appendChild(input);
                    parent.appendChild(checkb);
     
                    parent.appendChild(br);
     
                    ide++;
     
            }
     
    //-->
    </script>
     
    </head>
     
    <body onload="ajouteInput()">
     
    <div id="log">
    </div>
     
    <input type="button" onclick="ajouteInput()" id="idButton" value="Ajouter..."/>
     
     
    </body>
     
    </html>

    en passant : évite document.write() on a souvent de mauvaises surprises avec

  7. #7
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 379
    Par défaut
    Citation Envoyé par marts Voir le message
    utilises 2 id différents.
    ça na rien changé

    Auteur, qu'est ce que je peux utiliser à la place ?


    ...

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

Discussions similaires

  1. Afficher les coordonnées d'un layer dans des champs texte
    Par renaud26 dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 15/08/2006, 13h53
  2. [DOM] Supprimer des balise avec dom
    Par Shandler dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 04/06/2006, 19h03
  3. concaténer par GROUP BY des champs text/varchar
    Par Fredobdx dans le forum Requêtes
    Réponses: 1
    Dernier message: 12/07/2005, 13h44
  4. [SQLite]éliminer un motif dans des champ TEXT
    Par Invité(e) dans le forum Langage SQL
    Réponses: 2
    Dernier message: 26/05/2005, 17h44
  5. Boucler sur des champs texte
    Par syl2095 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 25/11/2004, 16h15

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