Ver Mensaje Individual
  #9 (permalink)  
Antiguo 14/03/2007, 04:54
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 21 años, 3 meses
Puntos: 45
Re: paso de parametros CheckBox

Bueno no se si es lo que buscabas baditxuk, pero he hecho un script que te genera la URL según mi idea:

Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<
html>
<
head>
<
title></title>
<
meta name="Author" content="derkeNuke">
</
head>

<
body>

<
form name="formulario">

</
form>

<
script>

var 
f=document.formulario;

//aqui hago una simulacion para generar n campos checkbox embebidos en "formulario", como si se generasen de un valor de servidor
var n=Math.round(Math.random()*4)+2;    //minimo 2 maximo 6
for(var a=0;a<n;a++) {
    var 
chk=document.createElement("INPUT");        //creamos el elemento
    
chk.setAttribute("type","checkbox");            //tipo checkbox
    
chk.setAttribute("name","nombre"+a);
    
f.appendChild(chk);
    
f.appendChilddocument.createTextNode("CHECKBOX "+a) );        //creamos el texto que le acompañara
    
f.appendChilddocument.createElement("BR") );                //salto de linea
}

//agregamos el boton con su correspondiente evento que nos devolvera la ruta de destino
var boton=document.createElement("INPUT");
boton.setAttribute("type","button");
boton.setAttribute("value","OK");
boton.onclick = function() {
    var 
destino="pagina.html?";
    
//recorremos todos los checkboxes del formulario
    
for(var a=0a<f.lengtha++ ) {
        if(
f[a].type=="checkbox") {        //si es un checkbox
            
destino+= f[a].name+"="+f[a].checked+"&";
        }
    }
    
//quitamos el ultimo caracter de destino que será o una ? o un & seguro
    
destino=destino.substring0destino.length-);
    
alert(destino);
}
f.appendChild(boton);

</script>

</body>
</html> 
Cuando le hagas click al botón saldrá la ruta del destino en un alert. Todos los checkbox del formulario se incluyen en la ruta. Si quieres que sólo se incluyan los que están checked basta con recorrer todos los elementos del formulario con esta condición:
Código PHP:
if(f[a].type=="checkbox" && f[a].checked
Espero que con eso puedas arreglártelas bien. Si tienes dudas intentaremos resolvertelas entre todos.

Byes
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.