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 automatique dans une zone de texte


Sujet :

JavaScript

  1. #1
    Membre régulier
    Inscrit en
    Octobre 2008
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 329
    Points : 97
    Points
    97
    Par défaut Retour à la ligne automatique dans une zone de texte
    Bonjour,

    Je suis en train de faire un formulaire dans lequel il y a un champ textearea.

    Ce champ fait 100 caractères de large sur 5 lignes. (500 caractères permis au total)

    Pour l'instant quand l'utilisateur tape le 101ème caractère ça ajoute un ascenseur horizontal qui s'allonge au fur et à mesure si on ne fait pas de retour chariot.

    Je voudrais que qd l'utilisateur tape le 101ème caractère ça passe automatiquement à la ligne, même chose pour le 201ème, etc

    Et que ça bloque la saisie à 500 caractères !

    Comment faire ?

    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <textarea name="presentation" cols="100" rows="5" id="presentation"></textarea>
    Ensuite je crois qu'il faut remplacer les <BR> par des sauts de ligne avec cette commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    str_replace("\n","<br>", $presentation);
    Est ce suffisant ? Si l'utilisateur saisit sur un mac ça marche aussi ?

    Merci pour la réponse

  2. #2
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Yo,
    La solution est plus vers un script js je pense.
    Tu pex pour limiter le nb de caractere faire ceci par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    function twCompteur_Texte(nTexte, nCompteur, nLimite) {
       			if (nTexte.value.length > nLimite)
       		    	nTexte.value = nTexte.value.substring(0, nLimite);
      			else 
    			    nCompteur.value = nLimite - nTexte.value.length;s
    			}
     
    //formulaire
     
    <textarea cols="38" rows="5" name="CptTxt" onKeyDown="twCompteur_Texte(this.form.CptTxt,this.form.compteM,75);" onKeyUp="twCompteur_Texte(this.form.CptTxt,this.form.compteM,75);"  onblur="twCompteur_Texte(this.form.CptTxt,this.form.compteM,75);" wrap="physical"></textarea>
    							<input readonly="readonly" type="text" name="compteM" size="4" maxlength="4" value="75"

    Bon courage
    tchuss guigo

  3. #3
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    vous allez chercher loin...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <textarea maxlength="20" rows="5" style="overflow:auto">aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</textarea>

  4. #4
    Membre régulier
    Inscrit en
    Octobre 2008
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 329
    Points : 97
    Points
    97
    Par défaut Overflow
    Cette solution serait parfaite mais ça ne marche pas. Il doit y avoir une erreur de syntaxe....

    J'ai essayé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <textarea name="presentation" maxlength="20" rows="5 style="overflow:auto"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa id="presentation"  </textarea>
    La zone de saisie fait maintenant 20 caractères, mais ça n'empêche pas l'ascenseur....

    Une autre solution ?

  5. #5
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    catégorie boulet, le winner is me... j'ai confondu textarea et input text...
    effectivement il faut passer par un js (il n'y a qu'IE qui coupe un mot trop long)

    maxlength c'est pour l'input

  6. #6
    Membre régulier
    Inscrit en
    Octobre 2008
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 329
    Points : 97
    Points
    97
    Par défaut Fonction Js
    Je vais donc essayer la fonction donnée plus haut je vous tiens au courant...

  7. #7
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    ça ne marche pas mieux

  8. #8
    Membre régulier
    Inscrit en
    Octobre 2008
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 329
    Points : 97
    Points
    97
    Par défaut Ah !
    Merci d'avoir essayé avant moi j'aurais galéré...

    Ca me parait pourtant basique ce problème c'est dingue ça...!

  9. #9
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    si on écrit normalement (c'est-à-dire des mots de [beaucoup] moins de 100 caractères)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <textarea wrap="virtual" cols="100" rows="5"></textarea>
    sinon il faut bidouiller en javascript

  10. #10
    Membre régulier
    Inscrit en
    Octobre 2008
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 329
    Points : 97
    Points
    97
    Par défaut Ca marche !
    Apparemment ça marche !

    Merci !

    Et pour la 2ème question ?

  11. #11
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    a priori ya pas de raison que ça ne marche pas sur un mac, linux ou que sais-je. ça dépend du navigateur uniquement. IE, FF et Opera accepte l'attribut wrap. possible que d'autres navigateurs ne l'accepte pas car il n'est pas standard

  12. #12
    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
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par pasc06 Voir le message
    Et pour la 2ème question ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    document.getElementById('ton_textarea').onkeydown=function(){
        if(this.value.length>500){return false}
    }
    Devrait le faire.

  13. #13
    Membre régulier
    Inscrit en
    Octobre 2008
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 329
    Points : 97
    Points
    97
    Par défaut Ah ???
    Cette fonction devrait me remplacer les <BR> par des \n ?

    Et pour les macs ça marche aussi ?

    Je n'ose le croire ! Mais alors Dieu existe ??? Lol

  14. #14
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    Citation Envoyé par pasc06 Voir le message
    Cette fonction devrait me remplacer les <BR> par des \n ?

    Et pour les macs ça marche aussi ?

    Je n'ose le croire ! Mais alors Dieu existe ??? Lol
    la fonction ne remplace pas BR par \n,
    donc n'y crois pas,
    donc Dieu n'existe pas
    CQFD

  15. #15
    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
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Désolé, je croyais que la 2e question était :
    Et que ça bloque la saisie à 500 caractères !

  16. #16
    Membre régulier
    Inscrit en
    Octobre 2008
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 329
    Points : 97
    Points
    97
    Par défaut Pas grave...
    Même en étant nul en Js j'avais compris...!

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/03/2020, 23h20
  2. [FPDF] Retour à la ligne automatique dans une cellule
    Par franchesko62 dans le forum Bibliothèques et frameworks
    Réponses: 18
    Dernier message: 08/12/2016, 11h42
  3. Entrer automatiquement dans une zone de texte
    Par tibo894 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/05/2009, 11h55
  4. Réponses: 1
    Dernier message: 19/11/2008, 18h22
  5. Retour à la ligne dans une zone de text
    Par hnb2003 dans le forum Access
    Réponses: 2
    Dernier message: 13/04/2006, 11h56

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