Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/06/2010, 08:02
nicostone
 
Fecha de Ingreso: marzo-2009
Mensajes: 76
Antigüedad: 15 años, 1 mes
Puntos: 1
AJAX y Multiple CheckBOX

Hola amigos, estoy haciendo un sitio y en un momento tengo que elimnar unos registros que que selecciona el usuario por unos check box que se generan automaticamente, mi problema viene que como hacer la query que luego envio por el metodos POST utilizando AJAX, en visto algo en el foro pero nada me ha funcionado y no puedo encontrar solucion, asique por favor les pido un ayuda.

El Id es el Id del registro se genera uno por cada uno de los registros, lo hago con un foreach, digamos algo asi: foreach ($ids as $id), esto esta bien ya que veo los Ids y estan perfectos, se los digo como para que se den un idea del problema
Código HTML:
<td><input name="idsEliminar[]" id="idsEliminar[]" type="checkbox"  value="<?php echo $id; ?>" /></td> 
mi problema esta en como formo la query, este seria mi funcion de AJAX:
ACLARO que soy muy novato en javascripts

tambien les digo que van a ver un funcion dameElementoPorId esa funcion no es el problema ya que la he usado miles de veces.

Código:
function cargaDivConPOSTEliminar(url, id_contenedor){
    var pagina_requerida = false;
	if (window.XMLHttpRequest) {// Si es Mozilla, Safari etc
		pagina_requerida = new XMLHttpRequest();
	}else if (window.ActiveXObject){ // pero si es IE
		try {
			pagina_requerida = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e){ // en caso que sea una versi�n antigua
			try{
			pagina_requerida = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e){}
		}
	}
	else
		return false;
		pagina_requerida.onreadystatechange=function(){ // funci�n de respuesta
		cargarpagina(pagina_requerida, id_contenedor)
	}

	pagina_requerida.open('POST', url, true); // asignamos los m�todos open y send
	pagina_requerida.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

        var checks = dameElementoPorId("idsEliminar[]");
        var checkboxes = [];
        var flag = true;
        

        for(var i = 0; i < checks.length; i++ ) {
            if(checks[i].checked && flag) {
                checkboxes.push(checks[i].name + "=" + checks[i].value);
                flag=false;
            }else if (checks[i].checked){
                checkboxes.push("&" + checks[i].name + "=" + checks[i].value);
            }
        }

        var query = "IdsEliminar[]" + checkboxes;

        pagina_requerida.send(query);
}
tambien intente con este codigo que encontre en el foro, pero me retorna el alert vacio:
Código:
var checks = dameElementoPorId("idsEliminar[]");
var checkboxes = [];
for(var i = 0; i < checks.length; i++ ) {
      if(checks[i].checked) {
            checkboxes.push(checks[i].name + "=" + checks[i].value);
      }
}
 
alert(checkboxes.join('&'));
Por favor si alguien me puede ayudar estaria muy agradecido.

Desde ya gracias por tomarse el tiempo de leer mi post.

Gracias y Saludos.

NicoStone.