Foros del Web » Programando para Internet » Javascript »

Contador retrasado de checkbox seleccionados en un input

Estas en el tema de Contador retrasado de checkbox seleccionados en un input en el foro de Javascript en Foros del Web. Hola a todos, estoy haciendo un formulario en el que hay un grupo de 19 checkbox con el mismo nombre todos, lo que quiero es ...
  #1 (permalink)  
Antiguo 05/07/2005, 16:25
 
Fecha de Ingreso: octubre-2004
Mensajes: 751
Antigüedad: 19 años, 6 meses
Puntos: 4
Contador retrasado de checkbox seleccionados en un input

Hola a todos,
estoy haciendo un formulario en el que hay un grupo de 19 checkbox con el mismo nombre todos, lo que quiero es que cuando el estado de uno cambie se cuenten los que estan seleccionados y se introduzcan en un input-text. Para eso he buscado en estos foros y he encontrado un mensaje donde salia la manera de que se contaran cuando se hacia click en un boton, además en vez de que salga el resultado en input-text salia en un alert.

Bueno el script me funciona pero a la que quito el boton añado el onChange a todos los checkbox y pongo el input-text me pasa una cosa muy rara.

El problema que hay es que va 1 retrasado. Es decir cuando le doy al primer checkbox, el input-text no cambia. Cuando le doy al segundo el input me marca 1, cuando le doy al tercero me marca 2...
Supongamos que en el quarto movimiento en vez de seleccionar otro checkbox deselecciono uno, entonce me marca dos (y esta bien), pero si en el quinto movimiento marco un otra vez entonces sigue indicando 2...

Pongo un script de ejemplo para que veais lo que me pasa:
Código HTML:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<script languaje="javascript">
function ContarCasillas()
{
var total = 0;
var maximo = form1.colores.length;
    for(i = 0; i < maximo; i++)
    if (form1.colores[i].checked == true)
    { total +=1; }
window.form1.totalcheck.value = total;
}
</script>

<form name="form1" method="GET" action="pagina.htm" target="_blank">

<input type="checkbox" name="colores" value="Rojo" onChange="ContarCasillas()">Rojo<br>

<input type="checkbox" name="colores" value="Azul" onChange="ContarCasillas()">Azul<br>

<input type="checkbox" name="colores" value="Amarillo" onChange="ContarCasillas()">Amarillo<br>

<input type="checkbox" name="colores" value="Verde" onChange="ContarCasillas()">Verde<br>


<input name="totalcheck" type="text" id="totalcheck">
</form>
</body>
</html> 
Me estoy volviendo medio loco por no saber que está pasando. A ver si alguien puede ayudarme.

Saludos y gracias,
__________________
sergiold

Última edición por sergiold; 05/07/2005 a las 16:46
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 14:22.