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 :

Retour à la ligne dans mon input text?


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Par défaut Retour à la ligne dans mon input text?
    salut à tous!

    Je cale sur une chose qui me paraissait simple au début...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <script language="javascript" type="text/javascript">
          function change(code){
            var valeur = document.form.champ.value;
            if(valeur.search(code) != -1){
              valeur = valeur.replace(' '+code+' ', '');
              document.form.champ.value = valeur;
              return false;
            }
            else{
              document.form.champ.value += ' '+code+' ';
              return true;
            }
          }
        </script>
    et ca c'est la partir html:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <form name="form">:
           <input type="textarea" name="champ"  ><br/>
           <input type="checkbox" name="cocher" value="1" 
                  onclick="change('Première valeur');" > Première valeur
           <input type="checkbox" name="cocher" value="2" 
                  onclick="change('Seconde valeur');"> Seconde valeur
           <input type="checkbox" name="cocher" value="3" 
                  onclick="change('Troisième valeur');"> Troisième valeur
        </form>
    Donc lorsque je clique les sélections apparaissent au fur et a mesure de mes clics mais sur la même ligne !! Moi j'aimerais que chaque sélection soit à la ligne pour établir une liste claire de mes sélections vous voyez????

    Et là je vous avoue avoir tout trifouillé, avec la fatigue c'est vrai...

    A moins qu'il ne soit pas pertinent de mettre tout ca dans un input textarea!! enfin là je bloque , désolé je sais qu'il y a sujet bien plus passionnants!
    Byyyye merci!

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <textarea>Un mot pour remplir</textarea>

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  3. #3
    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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    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
    <script language="javascript" type="text/javascript">
          function change(code){
            var valeur = document.form.champ.value;
            if(valeur.search(code) != -1){
              valeur = valeur.replace(' '+code+' ', '');
              document.form.champ.value = valeur;
              return false;
            }
            else{
                    document.form.champ.value+=code+'\r\n';
    		// augmenter le nombre de lignes visibles: document.form.champ.rows++                
              return true;
            }
          }
        </script>
    </head>
     
    <body>
    <form name="form">:
           <textarea name="champ"  ></textarea>
           <input type="checkbox" name="cocher" value="1" 
                  onclick="change('Première valeur');" > Première valeur
           <input type="checkbox" name="cocher" value="2" 
                  onclick="change('Seconde valeur');"> Seconde valeur
           <input type="checkbox" name="cocher" value="3" 
                  onclick="change('Troisième valeur');"> Troisième valeur
        </form>
    </body>
     
    </html>
    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 !

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Par défaut
    Merci de vos réponses,

    mais ca marche pas, là ca me supprime l'espace entre les sélections, mais ca va pas à la ligne...

  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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    Heu tu as vraiment testé mon 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 !

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Par défaut
    Hahahha j'avais testé juste en changeant une partie.... Désolé bien sûr qu'il fonctionne ton code !!!
    Merci à toi!!!!
    P.S: j'accepte de me retrouver dans la rubrique humour

  7. #7
    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
    valeur = valeur.replace(code+'\r\n', '');
    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

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Par défaut
    Ha alors ca va à la ligne mais quand je décoche ca ne s'efface plus! Qu'est ce qui a changé svp?

  9. #9
    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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    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
    <script language="javascript" type="text/javascript">
          function change(code){
          valeurs=new Array('Première', 'Deuxiéme', 'Troisième')
           document.forms['form'].elements['champ'].value=''
            var valeur = document.form.champ.value;
            var i=-1
              while(document.forms['form'].elements['cocher'][++i]){
            		if(document.forms['form'].elements['cocher'][i].checked){
            			document.forms['form'].champ.value+=	valeurs[document.forms['form'].elements['cocher'][i].value-1]+' valeur\r\n'
            		}       
            }
          }
        </script>
    </head>
     
    <body>
    <form name="form">:
           <textarea name="champ" rows=10></textarea>
           <input type="checkbox" name="cocher" value="1" 
                  onclick="change(this.value);" > Première valeur
           <input type="checkbox" name="cocher" value="2" 
                  onclick="change(this.value);"> Seconde valeur
           <input type="checkbox" name="cocher" value="3" 
                  onclick="change(this.value);"> Troisième valeur
        </form>
    </body>
     
    </html>
    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 !

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Par défaut
    Ha oui c'est ca!!!! alors tu vas me trouver lourd...
    Y a-t-il un moyen de remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     valeurs=new Array('Première', 'Deuxiéme', 'Troisième')
    par quelque chose qui fasse que l'array soit reconnu un peu comme en php avec []
    je voulais tenter ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var valeur = (document.form.coche[i].value)
    après ton while
    Mais je ca marche pas bien sûr...
    Parce que mes valeurs sont afficher par du php, là c'était un exemple, j'en ai beaucoup de checkboxs, donc tout ca dans un tableau de ce type, pas vraiment pratique, tu me comprends j'espère?

  11. #11
    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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    ben en fait comme tu as deux valeurs ...
    la vraie value (ex: 1)de l'option ... et le texte "première valeur)

    pourquoi ne fais tu pas une boucle en php pour concaténer ton array js ?
    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 !

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Par défaut
    En fait ce qui m'embrouille c'est que mon array n'est pas défini tant que je n'ai pas coche.
    Mais la première solution était très bien!
    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
    <script language="javascript" type="text/javascript">
          function change(code){
            var valeur = document.form.champ.value;
            if(valeur.search(code) != -1){
              valeur = valeur.replace(' '+code+' ', '');
              document.form.champ.value = valeur;
              return false;
            }
            else{
                    document.form.champ.value+=code+'\r\n';
    		// augmenter le nombre de lignes visibles: document.form.champ.rows++                
              return true;
            }
          }
        </script>
    </head>
     
    <body>
    <form name="form">:
           <textarea name="champ"  ></textarea>
           <input type="checkbox" name="cocher" value="1" 
                  onclick="change('Première valeur');" > Première valeur
           <input type="checkbox" name="cocher" value="2" 
                  onclick="change('Seconde valeur');"> Seconde valeur
           <input type="checkbox" name="cocher" value="3" 
                  onclick="change('Troisième valeur');"> Troisième valeur
        </form>
    </body>
     
    </html>
    Je pensais qu'il "suffisait de rajouter une condition avec checked pour que la sélection s'annule des que je décoche! non?? Merci a toi en tout cas...

  13. #13
    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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    avec une bidouille sur le alt ...
    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
    <script language="javascript" type="text/javascript">
     
     
          function change(obj){
          valeurs=new Array()
              var i=-1
              while(document.forms['form'].elements['cocher'][++i]){
    				 valeurs[document.forms['form'].elements['cocher'][i].value]=document.forms['form'].elements['cocher'][i].alt
    				 }
     
           document.forms['form'].elements['champ'].value=''
              var i=-1
              while(document.forms['form'].elements['cocher'][++i]){
            		if(document.forms['form'].elements['cocher'][i].checked){
            			document.forms['form'].champ.value+=	valeurs[(document.forms['form'].elements['cocher'][i].value)]+' \r\n'
            		}       
            }
          }
        </script>
    </head>
     
    <body>
    <form name="form">:
           <textarea name="champ" rows=10></textarea>
           <input type="checkbox" name="cocher" value="1" 
                  onclick="change(this);" alt="première valeur" />Première valeur
           <input type="checkbox" name="cocher" value="2" 
                  onclick="change(this);"  alt="seconde valeur" /> Seconde valeur
           <input type="checkbox" name="cocher" value="3" 
                  onclick="change(this);"  alt="toisième valeur" /> Troisième valeur
        </form>
    </body>
     
    </html>
    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 !

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Par défaut
    Ho niquel!

    C'est quoi ce alt????
    Désolé de t'avoir embêté avec ca , je le passe en résolu , merci

  15. #15
    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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    alt est un attribut html qui permet habituellement de definir un affichage alternatif pour des éléments ayant un src...
    on pourrait aussi utiliser title:
    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
    <script type="text/javascript">
     
     
          function change(obj){
          valeurs=new Array()
              var i=-1
              while(document.forms['form'].elements['cocher'][++i]){
    				 valeurs[document.forms['form'].elements['cocher'][i].value]=document.forms['form'].elements['cocher'][i].title
    				 }
     
           document.forms['form'].elements['champ'].value=''
              var i=-1
              while(document.forms['form'].elements['cocher'][++i]){
            		if(document.forms['form'].elements['cocher'][i].checked){
            			document.forms['form'].champ.value+=	valeurs[(document.forms['form'].elements['cocher'][i].value)]+' \r\n'
            		}       
            }
          }
        </script>
    </head>
     
    <body>
    <form name="form" action="truc.htm" method="post" >
           <textarea name="champ" rows=10 cols="80"></textarea>
           <input type="checkbox" name="cocher" value="1" 
                  onclick="change(this);" title="première valeur" />Première valeur
           <input type="checkbox" name="cocher" value="2" 
                  onclick="change(this);"  title="seconde valeur" /> Seconde valeur
           <input type="checkbox" name="cocher" value="3" 
                  onclick="change(this);"  title="toisième valeur" /> Troisième valeur
        </form>
    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 !

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Par défaut
    Oui je le connaissais en html mais je ne voyais pas ce qu'il venait faire la merci encore byyye!

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

Discussions similaires

  1. Interdire la saisie de chiffres dans mon input text
    Par karibouxe dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 03/11/2011, 10h50
  2. [XSLT] retour à la ligne dans un fichier texte
    Par SylMat dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 22/03/2007, 11h39
  3. [FORM] Retour à la ligne dans un champ texte
    Par visqueu dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 19/03/2007, 04h54
  4. Retour à la ligne dans Zone de texte. Via VBA
    Par GuidoBrasletti dans le forum Access
    Réponses: 2
    Dernier message: 19/05/2006, 11h56
  5. retour à la ligne dans un fichier texte
    Par pierrOPSG dans le forum C
    Réponses: 3
    Dernier message: 14/04/2006, 18h04

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