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 :

Ajout / suppression de champ


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Par défaut Ajout / suppression de champ
    Bonjour

    J'ai cherché à créer une fonction javascript me permettant dans un premier temps supprimer un champ en cliquant sur un bouton et dans un second temps de faire réapparaître ce champ en cliquant sur un bouton qui est apparu lors du 1er clic.

    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
    <script language="javascript">
    	function remove_input()
    
    {
    var nb2 = nb + 1;
    var i2 = i + 1;
    var el=document.getElementById("1");//input à supprimer
    document.getElementById('lechamps_'+i).innerHTML += '<br><span id="lechamps_'+i2+'"><a href="javascript:restaure_champ( '+nb2+', '+i2+')">Restaurer</a></span>';
    el.parentNode.removeChild(el);
    
    }
    </script>
    
    <script>
    function restaure_champ ( nb, i ) {
    
    var nb2 = nb + 1;
    var i2 = i + 1;
    document.getElementById('lechamps_'+i).innerHTML = '<input type="text" name="image[0]'+nb+'"></span>';
    
    
    }
    </script>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <tr>
    						<td>Image "1"</td>
    						<td> : </td>
    						<td><input type ='file' name='image[0]' id='1'/></td> <td><span id="lechamps_4"><a href="/" OnClick="remove_input()">Supprimer</a></td>
    						<td>&nbsp;</td>
    					</tr>
    le problème c'est que mon code ne marche pas
    Notez toutefois que si si je vire la partie du code que j'ai mis en rouge, mon champ se supprime mais le bouton permettant de restaurer le champ en question n'apparaît pas.

    Si quelqu'un peut me donner des pistes pour m'aider à avancer, je lui en serait reconnaissant.

    Merci d'avance.

  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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    pourquoi ne pas simplement le masquer ?
    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
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Par défaut
    Heu masquer quoi?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Par défaut
    Bon en fait j'ai fais comme ça:

    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
     
    <script language="javascript">
    	function remove_input()
     
    {
    var el=document.getElementById("1");//input à supprimer
     
     
    el.parentNode.removeChild(el);
     
    }
    </script>
     
     
    <script>
    function restaure_champ ( nb, i ) {
     
    var nb2 = nb + 1;
    var i2 = i + 1;
    document.getElementById('lechamps_'+i).innerHTML = '<input type="text" name="image[0]'+nb+'"></span>';
    //document.getElementById('lechamps_'+i).innerHTML += '<br><span id="lechamps_'+i2+'"><a href="javascript:restaure_champ( '+nb2+', '+i2+')">Restaurer</a></span>';
     
     
    }
    </script>
     
    	<script language="javascript">
    	function restaure_input ( nb, i )
     
    {
    var nb2 = nb + 1;
    var i2 = i + 1;
    document.getElementById('lechamps_'+i).innerHTML = '<input type="text" name="image[0]'+nb+'"></span>';
    document.getElementById('lechamps_'+i).innerHTML += '<br><span id="lechamps_'+i2+'"><a href="javascript:restaure_champ( '+nb2+', '+i2+')">Restaurer</a></span>';
     
     
    }
    </script>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <tr>
    						<td>Image "1"</td>
    						<td> : </td>
    						<td><input type ='file' name='image[0]' id='1'/></td> <td><span id="lechamps_4"><a href="/" OnClick="remove_input();restaure_input()">Supprimer</a></td>
    						<td>&nbsp;</td>
    					</tr>
    					<tr><td></td><td></td><td><span id="lechamps3_4" ><a href="javascript:restaure_champ(1, 4)">Restaurer</a></span></td>
    					</tr>
    Ce n'est pas encore très joli mais c'est déjà plus proche que ce que je cherche à faire le problème c'est que dans ce nouveau code le bouton "supprimer" disparaît dès que je clique sur "restaurer".

  5. #5
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    plutot que de supprimer l'élément et le recréer par la suite ... masque le et rend le visible àprès ...
    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 !

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Par défaut
    Citation Envoyé par SpaceFrog
    plutot que de supprimer l'élément et le recréer par la suite ... masque le et rend le visible àprès ...
    C'est justement ce que je suis en train d'essayer de faire malheureusement ma fonction restaure_input() n'est pas exécutée.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Par défaut
    Bon en fait je vois d'o`vient le pb la fonction restaure_input() n'est pas affichée correctement si quelqu'un peut m'expliquer comment le peux plusieurs fonction dans un seul onclick.

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

Discussions similaires

  1. [jQuery] Formulaire : auto complétion et ajout/suppression de champs
    Par Foxhoound dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 24/03/2012, 22h22
  2. Ajout/suppression de champs
    Par cbalmefrezol dans le forum jQuery
    Réponses: 3
    Dernier message: 09/04/2009, 12h48
  3. [AJAX] ajout / suppression champs ( dynamiquement ) dans une page web
    Par anwar1987 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/03/2009, 18h37
  4. Ajout/Suppression dynamique de champs
    Par hedgehog dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/04/2008, 10h57
  5. Ajout/suppression "dynamique" d'un champ
    Par 6ix dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 19/04/2008, 11h11

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