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 :

bloquer saisie d une textarea


Sujet :

JavaScript

  1. #21
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 24
    Points : 2
    Points
    2
    Par défaut
    ca , ca marche ( hormis le 1er retour chariot qu il faut faire soit meme , mais ca encore c un détail )

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     
    <html>
     
    <head>
    <meta name="GENERATOR" content="Microsoft FrontPage 5.0">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Nouvelle page 1</title>
     
    <script type='text/javascript'>
    function test(c) 
    {        
     
    var s=''; 
    var maString ='';
    s=c.value; 
     
          s = c.value; 
     
          if(s.lastIndexOf('\n') == '-1' && s.length >= 3 )
          {
          	s=s.substring(0,3)+'\n'+s.substring(3,s.length);
          	c.value = s;
          }
     
          s= s.split('\n'); 
     
          for(j=0;j<s.length;j++) 
          { 
                	//si nb char par ligne > 3 	
    				//max de 3 char par ligne
                   if(s[j].indexOf('\r') > 3 || (s[j].indexOf('\r')=='-1' && s[j].length>3) )
                   {
     
                   		if(s[j+1]==null)
                   		{
                   			s[j+1]=s[j].substring(3,s[j].length);
                   		}
                   		else
                   		{
                   			s[j+1]=s[j].substring(3,4)+s[j+1].substring(0,3);
                   		}
     
                   	 	s[j] = s[j].substring(0,3)+'\n';
     
                    } 
          } 
     
       for(k=0;k<s.length ;k++) 
       { 
          if(s[k] != null) 
             maString += s[k]; 
       } 
     
       c.value=maString ;
     
       return true; 
    } 
    </script>
     
    </head>
     
    <body>
     
    <form name="formulaire" method="POST" action="--WEBBOT-SELF--" onSubmit="location.href='_derived/nortbots.htm';return false;" webbot-onSubmit >
      <!--webbot bot="SaveResults" u-file="_private/form_results.csv" s-format="TEXT/CSV" s-label-fields="TRUE" startspan --><input TYPE="hidden" NAME="VTI-GROUP" VALUE="0"><!--webbot bot="SaveResults" endspan i-checksum="43374" --><p>&nbsp;</p>
      <p>&nbsp;</p>
      <p><textarea name='texta' rows="10" cols="20" onkeyup="return test(this)"></textarea></p>
      <p>&nbsp;</p>
      <p><input type="submit" value="Envoyer" name="B1"><input type="reset" value="Rétablir" name="B2"></p>
    </form>
     
    </body>
     
    </html>
    le GROS pb est que bah le curseur se place a la fin a chaque fois et ca c reloux ....HELP

  2. #22
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 24
    Points : 2
    Points
    2
    Par défaut
    correction pour la 1er ligne :

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
     
    <html>
     
    <head>
    <meta name="GENERATOR" content="Microsoft FrontPage 5.0">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Nouvelle page 1</title>
     
    <script type='text/javascript'>
    function test(c) 
    {        
     
    var s=''; 
    var maString ='';
    s=c.value; 
    ligne1 = false;
     
          s = c.value; 
     
          if(s.indexOf('\r') == '-1' && s.length > 3 )
          {
          	s=s.substring(0,3)+'\r'+s.substring(3,4);
          	c.value = s;
          	ligne1 = true;
          }
     
          s= s.split('\n'); 
     
          for(j=0;j<s.length;j++) 
          { 
                	//si nb char par ligne > 3 	
    				//max de 3 char par ligne
                   if(s[j].indexOf('\r') > 3 || (s[j].indexOf('\r')=='-1' && s[j].length>3) )
                   {
     
                   		if(s[j+1]==null)
                   		{
                   			s[j+1]=s[j].substring(3,s[j].length);
                   		}
                   		else
                   		{
                   			s[j+1]=s[j].substring(3,4)+s[j+1].substring(0,3);
                   		}
     
                   	 	s[j] = s[j].substring(0,3)+'\n';
     
                    } 
          } 
     
       for(k=0;k<s.length ;k++) 
       { 
          if(s[k] != null) 
             maString += s[k]; 
       } 
     
    	if(!ligne1)  
       		c.value=maString ;
     
       return true; 
    } 
    </script>
     
    </head>
     
    <body>
     
    <form name="formulaire" method="POST" action="--WEBBOT-SELF--" onSubmit="location.href='_derived/nortbots.htm';return false;" webbot-onSubmit >
      <!--webbot bot="SaveResults" u-file="_private/form_results.csv" s-format="TEXT/CSV" s-label-fields="TRUE" startspan --><input TYPE="hidden" NAME="VTI-GROUP" VALUE="0"><!--webbot bot="SaveResults" endspan i-checksum="43374" --><p>&nbsp;</p>
      <p>&nbsp;</p>
      <p><textarea name='texta' rows="10" cols="20" onkeyup="return test(this)"></textarea></p>
      <p>&nbsp;</p>
      <p><input type="submit" value="Envoyer" name="B1"><input type="reset" value="Rétablir" name="B2"></p>
    </form>
     
    </body>
     
    </html>

  3. #23
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 24
    Points : 2
    Points
    2
    Par défaut
    toujours meme pb : le curseur se place a la fin a chaque fois

  4. #24
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 24
    Points : 2
    Points
    2
    Par défaut
    Bon ; l idée et de mettre le champs formater dans une variable globale afin d avoir la mise en forme qui nous permet de suivre le nb de ligne ,

    voici le code ( qql peu bugué a mort lol )

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
     
    <html>
    <head>
     
    <script type='text/javascript'>
     
     
    var t = "";
     
    function trim(val)
    {
        var retour = "" ;
        for(i=0;i < val.length;i++) 
            if(val.charAt(i) != '\n' && val.charAt(i) != '\r')
            { 
                retour += val.charAt(i) ;
            } 
        return retour ;
    }
     
    function test(c) 
    {        
     
    if( trim(t).length > trim(c.value).length )
    	t = c.value;
     
    ligne1 = false;
    var s; 
    maString=''; 
     
          s = t + c.value.charAt(c.value.length-1); 
     
          if(s.lastIndexOf('\n') == '-1' && s.length > 3 )
          {
          	s=s.substring(0,3)+'\n'+s.substring(3,s.length);
          	t = s;
          	ligne1 = true;
          }
     
          s= s.split('\n'); 
     
          for(j=0;j<s.length;j++) 
          { 
    			//si nb char par ligne > 3 	
    			//max de 3 char par ligne
    		   if(s[j].indexOf('\r') > 3 || (s[j].indexOf('\r')=='-1' && s[j].length>3) )
    		   {
     
    				if(s[j+1]==null)
    				{
    					//s[j+1]=s[j].substring(3,s[j].length);
    					s[j+1]=s[j].substring(3,4);
    				}
    				else
    				{
    					s[j+1]=s[j].substring(3,4)+s[j+1].substring(0,3);
    				}
     
    				s[j] = s[j].substring(0,3)+'\n';
     
    			} 
          } 
     
       for(k=0;k<s.length;k++) 
       { 
          if(s[k] != null) 
             maString += s[k].substring(0,3); 
     
          if(s[k].length >= 3)
          	maString += '\n';
       } 
     
    	//if(!ligne1) 
    	//{
    		t=maString;
    	//}
     
    } 
     
    function test2(c)
    {
     
    if( trim(t).length > trim(c.value).length)
    	t = test(c.value);
     
    	//touche supr et del autorisé dans tout les cas
    	if(event.keyCode == '8' || event.keyCode == '34')
    		return true;
     
    	var y ='';
    	y = t.split('\n');
     
    	if(y.length > 5 || ( y[4] != null && y[4].length >= 3 ) )
    		return false
    	else if(y.length <= 5 )
    		return true;
    }
    </script>
     
    </head>
     
    <body>
     
    <form name="formulaire" method="POST" action="--WEBBOT-SELF--" onSubmit="location.href='_derived/nortbots.htm';return false;" webbot-onSubmit >
      <!--webbot bot="SaveResults" u-file="M:\_private\form_results.csv" s-format="TEXT/CSV" s-label-fields="TRUE" startspan --><input TYPE="hidden" NAME="VTI-GROUP" VALUE="0"><!--webbot bot="SaveResults" endspan i-checksum="43374" --><p>&nbsp;</p>
      <p>&nbsp;</p>
      <p><textarea name='texta' rows="10" cols="20" onkeydown="return test2(this)"  onkeyup="return test(this)"></textarea></p>
      <p>&nbsp;</p>
      <p><input type="submit" value="Envoyer" name="B1"><input type="reset" value="Rétablir" name="B2"></p>
    </form>
     
    </body>
     
    </html>
    la je perd ma var a un moment donnée que je n ai pas cerné et du tout je remet po tout en forme et du coup ca passe a plus de N lignes autorisées ...mais je pense que l idée est là , si qql peut m aider ?

  5. #25
    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 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    jsue au passage ... évitez les noms reservés du langage javascript pour des noms de fonctions ou de variables !

    test est un mot reservé de javascript !
    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. #26
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 24
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par SpaceFrog
    jsue au passage ... évitez les noms reservés du langage javascript pour des noms de fonctions ou de variables !

    test est un mot reservé de javascript !
    tu es sure ?? ca sert a quoi et ca s utilise comment ???

  7. #27
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 24
    Points : 2
    Points
    2
    Par défaut
    personne ??

  8. #28
    m@t
    m@t est déconnecté
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 172
    Points : 122
    Points
    122
    Par défaut
    Sauf erreur de ma part, je ne pense pas que test soit un mot réservé par le langage Javascript.

    Voici plusieurs liens listant ces mots proscrits :

    http://www.carto.net/help/selfhtml_8...ge/reserve.htm

    http://fr.wikibooks.org/wiki/Program...%A9serv%C3%A9s

    Il est possible que ces listes ne soient pas exhaustives, pourtant, il ne me semble jamais avoir lu ou entendu que test était un mot réservé ...

  9. #29
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Nous t'avons déjà répondu ici : http://www.developpez.net/forums/viewtopic.php?t=452432
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  10. #30
    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 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    m@t pour ta culture personnelle ..
    ce n'est pas parceque d'autre font l'erreur d'utiliser des mots réservés qu'il faut les suivre ...



    http://www.devguru.com/Technologies/ecmascript/quickref/regexp_test.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 !

  11. #31
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 24
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par SpaceFrog
    m@t pour ta culture personnelle ..
    ce n'est pas parceque d'autre font l'erreur d'utiliser des mots réservés qu'il faut les suivre ...



    http://www.devguru.com/Technologies/ecmascript/quickref/regexp_test.html
    c est une methode de "classe" ( facon de parler n est ce pas , on sait que javascript n est pas OO )

    mais RegExp.test c est pas pareil que test !!! ( MaClasse.MaMethode ) ...

    pour la solution fourni en algo , elle n'est pas utilisable totalement en l etat ...

Discussions similaires

  1. Bloquer saisie dans une PropertyGrid de type ListBox
    Par melsanka dans le forum Windows Forms
    Réponses: 5
    Dernier message: 28/09/2009, 10h57
  2. bloquer la saisie d'une liste
    Par matdrap dans le forum IHM
    Réponses: 4
    Dernier message: 11/07/2008, 15h21
  3. Réponses: 1
    Dernier message: 06/12/2007, 19h42
  4. Comment bloquer la saisie d'une touche dans un TEdit ?
    Par bahamut100 dans le forum Débuter
    Réponses: 6
    Dernier message: 01/11/2007, 11h35
  5. [tkinter] Bloquer la saisi d'une Entry
    Par airod dans le forum Tkinter
    Réponses: 1
    Dernier message: 23/07/2007, 14h57

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