Для элементов input доступно такое свойство, как maxlength, которое позволяет ограничить количество вводимых в эти поля символов. Однако для textarea такой атрибут не существует, и поэтому для ограничения ввода нужно использовать JavaScript.
<script type="text/javascript">
function limitText(limitField, limitCount, limitNum) {
if (limitField.value.length > limitNum) {
limitField.value = limitField.value.substring(0, limitNum);
} else {
limitCount.value = limitNum — limitField.value.length;
}
}
</script>
Пример использования функции:
<form name="myform">
<textarea name="message" onKeyDown="limitText(this,this.form.count,20);"
onKeyUp="limitText(this,this.form.count,20);">
</textarea><br />
<span style="font-size:smaller">(не более 20 символов)</span><br/>
<input readonly type="text" name="count" size="3" value="20"/> символов осталось.
</form>