2010-08-16 6 views
5

Je souhaite définir la longueur maximale de la zone de texte. J'utilise le code suivant pour le même, mais il ne fonctionne pas,Zone de texte maxlength ne fonctionne pas

<textarea name="txtDescription" cols=10 rows=3 maxlength=50></textarea> 

Mais il ne fonctionne pas, il faut des personnages au-delà de 50.

+0

double possible de [Comment imposer maxlength sur textArea en HTML, Javascript] (http : //stackoverflow.com/questions/1125482/how-to-impose-maxlength-on-textarea-in-html-javascript) –

Répondre

4

Il n'y a pas maxlength attribut défini pour textarea. Vous devez implement ce using javascript.

+3

Votre propre lien "implémenter" indique qu'il est pris en charge pour HTML5. –

-3

s'il vous plaît utiliser jquery pour référence

<script type="text/javascript"> 
$().ready(function(){ 

    $("#textareaId").maxLength(20); 

}); 
</script> 
+1

SCRIPT438: L'objet ne prend pas en charge la propriété ou la méthode 'maxLength' – Raghav

-1

attribut maxlength pour les travaux textarea dans Chrome.

1

Yup maxlength ne fonctionne pas dans les textarea. Mais vous pouvez utiliser jQuery quelque chose comme ceci:

var $limitNum = 500; 
    $('textarea[name="textarea_name"]').keydown(function() { 
     var $this = $(this); 

     if ($this.val().length > $limitNum) { 
      $this.val($this.val().substring(0, $limitNum)); 
     } 
    }); 
-2

Vous devez le mettre dans la balise HTML comme cela, assurez-vous que vous avez airquotes « ».

<textarea maxlength="5"></textarea>

0

Les réponses sont au-dessus correcte pour la version antérieure de IE 10.

Si vous rencontrez des problèmes avec maxlength attribure, ma recommandation est de vérifier votre version du navigateur d'abord. L'attribut maxlength est nouveau pour l'étiquette en HTML5. Il devrait être très bien sur IE 10+ ou Chrome.

-2

Cela fonctionne pour Ruby on Rails:

:maxlength => "10" 

exemple de code:

<%= text_area 'order', 'special_instructions_display', :size => "85x7", :maxlength => "10" %> 
0

J'ai essayé maxlength dans textarea, mais ne compte pas correctement les caractères (également compte les EOL). J'utilise l'attribut max_length au lieu de maxlength normal.

HTML:

<textarea name="whatever" max_length="100"></textarea> 

JS:

$('textarea').keyup(function(){ 
    var maxlength = parseInt($(this).attr('max_length')), 
     text = $(this).val(), 
     eol = text.match(/(\r\n|\n|\r)/g), 
     count_eol = $.isArray(eol) ? eol.length : 0,//error if eol is null 
     count_chars = text.length - count_eol; 
    if (maxlength && count_chars > maxlength) 
    $(this).val(text.substring(0, maxlength + count_eol)); 
}); 
0

vous pouvez utiliser

<textarea name="testString" onkeypress="if (this.value.length >= 250) { return false; }"id="" cols="30" rows="10" maxlength="250"></textarea> 
Questions connexes