JavaScript - validar al menos un checkbox

 
Vista:
sin imagen de perfil
Val: 7
Ha disminuido su posición en 11 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

validar al menos un checkbox

Publicado por Raul (5 intervenciones) el 21/09/2016 00:55:36
Necesito hacer un código en javascript para validar al menos un checkbox en un formulario. He tomado el ejemplo que aparece en el sitio
https://ignorante.wordpress.com/2007/09/19/validacion-de-formularios-como-cancelar-la-ejecucion-de-un-evento/
ya que este ejemplo permite detener el envio hasta que la validación sea hecha. No logro hacer funcionar el código.
Agradezco cualquier ayuda o sugerencia.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<!DOCTYPE html>
<html>
<head>
<title>validar-checkbox</title>
<meta charset = "utf-8">
<script>
function validate(e) {
var formulario = document.form;
for (var i = 0; i < form.choice.length; i++) {
if (form.choice[i].checked === 0) {
alert ('debes seleccionar al menos una opción');
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false;
}
}
}
}
</script>
<head>
<body>
<form name = "form" onsubmit = "validate(event, this);">
<input type = "checkbox" name = "chice" value = "valor1" />
<input type = "checkbox" name = "chice" value = "valor2" />
<input type = "checkbox" name = "chice" value = "valor3" />
<input type = "checkbox" name = "chice" value = "valor4" />
<input type = "submit" />
</form>
</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alain
Val: 26
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

validar al menos un checkbox

Publicado por Alain (8 intervenciones) el 21/09/2016 21:59:05
Hola Raul

Prueba con esto. Saludos!!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function validate(e) {
    var formulario = document.form;
    for (var i = 0; i < form.childElementCount; i++) {
        if (form.children[i].type == "checkbox" && form.children[i].checked==false) {
            alert('debes seleccionar al menos una opción');
            if (e.preventDefault) {
                e.preventDefault();
            } else {
                e.returnValue = false;
            } break;
        } else
            break;
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar