Tema: Checkbox[]
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/02/2010, 10:59
Avatar de dART
dART
 
Fecha de Ingreso: enero-2009
Ubicación: Madrid
Mensajes: 246
Antigüedad: 15 años, 10 meses
Puntos: 7
Checkbox[]

Hola,

Estoy con una web la cual debe disponer de un limite de selecciones de checkbox, en este caso 2 únicamente.

El problema viene al recogerlos, o al limitarlos, según se mire. Lo recogo con PHP, pero el sistema que uso para limitarlo a 2, impide tener el name del checkbox del tipo que necesita tener en PHP para poder recoger los valores como arrays.

Resumo:
Código HTML:
<input name="nombrecheckbox[]" value="a" type="checkbox" id="a" />

<input name="nombrecheckbox[]" value="b" type="checkbox" id="b" />

<input name="nombrecheckbox[]" value="c" type="checkbox" id="c" /> 
Y se recogerían con php, pero claro, tengo el script:

Código:
function maxNumCheckbox(nombre, maximoCheckbox){
		for (var i=0; i<nombre.length; i++){
			nombre[i].onclick=function(){
			var num_chequeados=0;
			for (var i=0; i<nombre.length; i++)
				num_chequeados+=(nombre[i].checked)? 1 : 0
				if (num_chequeados>maximoCheckbox){
					alert("Lo sentimos, solo puede seleccionar "+maximoCheckbox+" opciones de forma gratuita");
					this.checked=false;
				}
			}
		}
	}
que es el encargado de impedirme seleccionar mas de 2 opciones. Pero luego lo llamo en el archivo.php así:

Código HTML:
<script type="text/javascript" language="javascript">
   maxNumCheckbox(document.forms.nombredelformulario.nombrecheckbox[], 2);
</script> 
Y ahi viene el problema, me da error de sintaxis al colocarle las [] al nombrecheckbox... pero es que sino, no puedo recogero en php al tener el mismo nombre... espero haberme explicado, cómo puedo hacerlo? Por favor echadme una manita!


Gracias de antemano compañeros.