Foros del Web » Programando para Internet » Javascript »

Contar caracteres textarea

Estas en el tema de Contar caracteres textarea en el foro de Javascript en Foros del Web. Hola, tengo un textarea que limita la cantidad de caracteres, en el que además se pueden poner smileys. El problema es que al hacer clic ...
  #1 (permalink)  
Antiguo 09/12/2007, 16:56
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 4 meses
Puntos: 36
Contar caracteres textarea

Hola, tengo un textarea que limita la cantidad de caracteres, en el que además se pueden poner smileys. El problema es que al hacer clic en algún smiley, el contador de caracteres no disminuye su número.

Código HTML:
<html>
<head>

<script language="JavaScript">

function caritas(Which){
document.form.comentario.value = document.form.comentario.value + Which;
}

function contador (campo, cuentacampo, limite) {
if (campo.value.length > limite) campo.value = campo.value.substring(0, limite);
else cuentacampo.value = limite - campo.value.length;
}
</script>

</head>
<body>

<form name="form">

<!-- Textarea -->

<textarea name="comentario"  
onKeyDown="contador(this.form.comentario,this.form.remLen,2000);" 
onKeyUp="contador(this.form.comentario,this.form.remLen,2000);">
</textarea>

<!-- Smiley -->

<a href="javascript:caritas('smiley1')">
<img src=../smileys/smiley1.gif>
</a>

<!-- Contador -->

<p>Caracteres restantes: 
<input type="text" name="remLen" value="2000" readonly>
</p>


<input type="submit">


</form>

</body>
</html> 
Gracias
  #2 (permalink)  
Antiguo 09/12/2007, 20:02
Avatar de demiurgo_daemon  
Fecha de Ingreso: diciembre-2006
Ubicación: Querétaro
Mensajes: 184
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Contar caracteres textarea

Hola,

tienes dos eventos: onkeyup y onkeydown. Ninguno se va a activar cuando le picas al smiley para que se agregue. Puedes cambiar ambos por onchange

Código:
onchange="contador(this.form.comentario,this.form.remLen,2000);"
y ver qué pasa.

saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:07.