Buenas noches.
La solución de
tunait, es correcta, pero quiero hacer un inciso sobre
Cita: javascript no acepta nombres de elementos con corchetes. Lo más sencillo que puedes hacer es agregar a cada elemento además un id sin corchetes
Si se puede hacer referencia a un elemento cuyo nombre está formado por corchetes....
Lo que hay que hacer es acceder a la colección por medio de formulario.elements[
nombreDelElemento], donde
nombreDelElemento, puede tener o no corchetes.
Os pongo un ejemplo a continuación:
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Validacion</title>
<script language="JavaScript1.2" type="text/javascript">
function validarPulsados()
{
var checados = false;
var cantidadCheckbox = 9;
var objFormulario = document.forms["formulario"];
for (contadorElementos=1;contadorElementos<cantidadCheckbox;contadorElementos++)
{
var actualName = "elemento[" + contadorElementos + "]";
var actualCheckbox = objFormulario.elements[actualName];
if (actualCheckbox.checked == true)
{
checados = true;
break;
}
}
if (checados == false)
{
alert ("debe checar al menos un elemento");
}
}
</script>
</head>
<body bgcolor="#00ffff">
<center>
<form name="formulario" action="" method="post">
<input type="Checkbox" name="elemento[1]" id="elemento1"><label for="elemento1">Elemento 1</label><br>
<input type="Checkbox" name="elemento[2]" id="elemento2"><label for="elemento2">Elemento 2</label><br>
<input type="Checkbox" name="elemento[3]" id="elemento3"><label for="elemento3">Elemento 3</label><br>
<input type="Checkbox" name="elemento[4]" id="elemento4"><label for="elemento4">Elemento 4</label><br>
<input type="Checkbox" name="elemento[5]" id="elemento5"><label for="elemento5">Elemento 5</label><br>
<input type="Checkbox" name="elemento[6]" id="elemento6"><label for="elemento6">Elemento 6</label><br>
<input type="Checkbox" name="elemento[7]" id="elemento7"><label for="elemento7">Elemento 7</label><br>
<input type="Checkbox" name="elemento[8]" id="elemento8"><label for="elemento8">Elemento 8</label><br><br>
<input type="Button" value="validar pulsados" onclick="validarPulsados()">
</form>
</center>
</body>
</html>
Solo era una puntualización.
Un saludo