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 :

inserer texte apres x lettres saisies


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 172
    Points : 56
    Points
    56
    Par défaut inserer texte apres x lettres saisies
    Bonjour,

    Je souhaiterai savoir si une telle fonction existe. J'ai une textarea, et je veux que tout les 24 carateres, cela insert automatiquement <br>.
    Ma textarea fait 72 caracteres

    Merci

  2. #2
    Membre averti Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    Février 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paaaaaa

    Informations forums :
    Inscription : Février 2004
    Messages : 557
    Points : 400
    Points
    400
    Par défaut
    Salut,

    un exemple qui insère un CR (Carriage Return) tout les 2 caractères
    Dans cet exemple la taille du textarea est divisée par le modulo 2.


    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
     
    <html>
    <head>
    <script type="text/javascript">
    function addChar(id){
    var zone = document.getElementById(id);   //recup du textarea
     if(zone.value.length%2===0 && zone.value.length>0){ // si divisible/2 et >0
    	zone.value+=String.fromCharCode(13); // ajout du CR (code ASCII 13)
     }
    }
    </script>
    <style>
    </style>
    </head>
    <body>
    </body>
    <textarea id="area" onkeydown="addChar(this.id);"/>
    </textarea>  
    </html>

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 172
    Points : 56
    Points
    56
    Par défaut
    Bonjour et merci
    Citation Envoyé par SPACHFR Voir le message
    if(zone.value.length%2===0 && zone.value.length>0){
    zone.value+=String.fromCharCode(13);
    }
    Ca donnerait ca ?

    if(zone.value.length%24===0 && zone.value.length>0){
    zone.value+='<br>';
    }

    Je ne sais pas si cela est correct

  4. #4
    Membre averti Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    Février 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paaaaaa

    Informations forums :
    Inscription : Février 2004
    Messages : 557
    Points : 400
    Points
    400
    Par défaut
    Si tu veux tout les 72 caractères il suffit de mettre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if(zone.value.length%72===0 && zone.value.length>0){
    On utilise le modulo pour savoir si c'est divisible par x (ici 72)



    si c'est le cas on ajout le caractère voulu par son code ASCII
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    zone.value+=String.fromCharCode(13);
    Si tu veux vraiment mettre '<br>' dans ta zone
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    zone.value+='<br>';

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 172
    Points : 56
    Points
    56
    Par défaut
    mer ci je vais tester

  6. #6
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Sinon on peut le faire après la saisie globale car en cas d'effacement d'un caractère au mileu d'une ligne de 24 la redistribution des br ne se fera pas.

    un premier split sur <br/> suivi d'un join('')
    puis un split sur /.{24}
    et pour terminer un join sur <br/>

    là au moins tu auras toujours un br tous les 24 caractères même en cas de copier coller ou effacer en mileu de texte

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

Discussions similaires

  1. [TPW] Ajout d'une ligne dans un fichier texte après une position saisie
    Par Invité dans le forum Turbo Pascal
    Réponses: 1
    Dernier message: 19/12/2010, 11h27
  2. Réponses: 2
    Dernier message: 10/12/2010, 23h41
  3. Réponses: 1
    Dernier message: 15/03/2007, 20h37
  4. Réponses: 1
    Dernier message: 22/08/2006, 12h07
  5. cacher un texte lors de la saisi
    Par moicats dans le forum Access
    Réponses: 5
    Dernier message: 09/05/2006, 16h51

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