Hola a todos. Tengo un formulario con una serie de checkbox entre dos etiquetas <logic:iterate>: 
 
<html:form action="/asociarVehiculosPromocion.do?tipo=vehicpromo&tipo_  vehic=catalogo&tipo_promo=descuento" onsubmit="javascript:return validar_formulario(this);"> 
... 
 
<logic:iterate name="vehiculoList" id="vehiculo" scope="request" type="concesionario.entidades.Vehiculo"> 
 
<input type="checkbox" name="asociar_vehiculo" value="<bean:write name="vehiculo" property="cod_vehiculo"/>" /> 
<bean:write name="vehiculo" property="marca"/> 
<bean:write name="vehiculo" property="modelo"/> 
<bean:write name="vehiculo" property="version"/> 
<bean:write name="vehiculo" property="acabado"/> 
 
</logic:iterate> 
 
Tengo el siguiente código javascript para que se muestre un mensaje de error en caso de que no se seleccione ninguna opción: 
 
<SCRIPT LANGUAGE="JavaScript"> 
function validar_formulario(formulario) 
{ 
num=0; 
for(i=0; ele=formulario.asociar_vehiculo[i]; ++i) 
{ 
if (ele.type=='checkbox' && ele.checked) 
{ 
num++ 
} 
} 
 
if (num == 0) 
{ 
alert("HOLA" + num); 
return false; 
} 
 
formulario.submit(); 
} 
</SCRIPT> 
 
El problema es que cuando solo tengo un elemento en la lista el num se queda a cero aunque el element este este marcado y sale el error, como si no hubiera marcado nada. No sé que puede estar mal. Saludos. 
  
 
 
