Foros del Web » Programando para Internet » Javascript »

validacion checkbox, donde esta el error?

Estas en el tema de validacion checkbox, donde esta el error? en el foro de Javascript en Foros del Web. function valida() { i=0; cont=0; vfinal = document.llenar.cheque.length; for (i=0; i<vfinal ;i++) { if (document.llenar.cheque[i].checked == true) cont = cont + 1; } if (cont ...
  #1 (permalink)  
Antiguo 24/09/2004, 07:38
 
Fecha de Ingreso: mayo-2004
Mensajes: 45
Antigüedad: 20 años
Puntos: 0
validacion checkbox, donde esta el error?

function valida()
{
i=0;
cont=0;
vfinal = document.llenar.cheque.length;
for (i=0; i<vfinal ;i++)
{

if (document.llenar.cheque[i].checked == true)
cont = cont + 1;
}
if (cont == 0)
{
alert ("Debe seleccionar al menos un campo...");
}
else
if (confirm('¿Estas seguro de enviar este formulario?'))
{
return true;
}
return false;
}

aqui esta el checkbox, este se imprime para cada uno de los campos, es decir tal cual como tu eliminases un mail

<INPUT TYPE="checkbox" name="cheque" value="<%=rstSearch.fields("xxx")%>"> (ojo que todos los campos tienen el mismo nombre pero varian segun su value)

el problema es que cuando muestro mas de 2 campos ni un problema y me funciona a las mil maravillas......pero cuando ingreso 1.....y le pongo eliminar me dice que debo seleccionar un campo, en otras palabras esta undefined....pero despues le puse un alert.....y me muestra el valor.....en el caso de 1 checkbox o un registro no puede mostrar el lenght?

porfa ayudenme es lo unico que me falta por validar en el caso de que la consulta arroje un solo checkbox

grax a cualquier respuesta
  #2 (permalink)  
Antiguo 24/09/2004, 08:55
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola Dkdente.

Me suena que este problema ya lo tuvo otro miembro del foro, pero no recuerdo si lo solucionó ni como. Como idea, se me ocurre que si los checkbox están dentro de un formulario

<form id="frm">

Puedes hacer algunos cambios en tu función a ver si te sirve:

function valida()
{
i=0;
cont=0;
vfinal = document.getElemengById('frm').elements;
for (i=0; i<vfinal.length ;i++)
{
if (vfinal[i].type=='checkbox")
if (vfinal[i].checked)
cont = cont + 1;
}

Te he contestado de memoria, así que espero no haber metido mucho la pata. 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 22:50.