Contador de caracteres en un textarea
Aqui encontre un codigo que les puede ser de utilidad para los que necesiten hacer un formulario o algo similar.
Se trata de controlar el tamaño del texto que se escribe en un textarea para evitar que los caracteres escritos sobrepasen de los permitidos. El control de los caracteres escritos se hace con Javascript, dinámicamente en el lado del cliente, de modo que cuando el usuario llega a la longitud permitida, no se permite escribir más contenido en el campo textarea.
Se trata de controlar el tamaño del texto que se escribe en un textarea para evitar que los caracteres escritos sobrepasen de los permitidos. El control de los caracteres escritos se hace con Javascript, dinámicamente en el lado del cliente, de modo que cuando el usuario llega a la longitud permitida, no se permite escribir más contenido en el campo textarea.
<html>
<head>
<script>
contenido_textarea = ""
num_caracteres_permitidos = 10
function valida_longitud(){
num_caracteres = document.forms[0].cuerpo.value.length
if (num_caracteres > num_caracteres_permitidos){
document.forms[0].cuerpo.value = contenido_textarea
}else{
contenido_textarea = document.forms[0].cuerpo.value
}
if (num_caracteres >= num_caracteres_permitidos){
document.forms[0].caracteres.style.color="#ff0000";
}else{
document.forms[0].caracteres.style.color="#000000";
}
cuenta()
}
function cuenta(){
document.forms[0].caracteres.value=document.forms[0].cuerpo.value.length
}
</script>
</head>
<body>
<form action="#" method="post">
<table>
<tr>
<td>Texto:</td>
<td><textarea cols="40" rows="5" name="cuerpo" onKeyDown="valida_longitud()" onKeyUp="valida_longitud()"></textarea></td>
</tr>
<tr>
<td>Caracteres:<br/>max 10</td>
<td><input type="text" name=caracteres size=4></td>
</tr>
</table>
</form>
</body>
</html>
No
tiene ninguna complicación. Pero hay que prestar atención a los eventos
del textarea, que son onKeyDown y onKeyUp, que se desatan cuando el
usuario aprieta o suelta teclas del teclado. En ambos eventos se llama a
la función javascript valida_longitud(), que se encargará de hacer todo
el trabajo.
Los campos que deben de tener en cuenta son:
contenido_textarea = "" num_caracteres_permitidos = 10 |
el primero esta vacio, ya que se supone que el contenido al comenzar este asi, el segundo es el numero de caracteres permitidos.
Para ver mejor el ejemplo les dejo una demo
Para ver mejor el ejemplo les dejo una demo
Espero que les sea de utilidad.
Hasta la Proxima.
Hasta la Proxima.