Ver Mensaje Individual
  #29 (permalink)  
Antiguo 09/03/2013, 11:33
Avatar de juliet14
juliet14
 
Fecha de Ingreso: febrero-2013
Mensajes: 12
Antigüedad: 11 años, 9 meses
Puntos: 2
De acuerdo Respuesta: AddEventListener me va a volver loca!

Hola a todos:
POR FIN HE CONSEGUIDO QUE FUNCIONE!
Y gracias a vosotros
En mi pagina principal he puesto:

Código Javascript:
Ver original
  1. function redirije(t){
  2.         initReq("POST",t.title+'.php',true);
  3.     }
  4.  
  5.     function cargaEventos(){
  6.     alert("Eventos cargados");
  7.     var linksmenu = [];
  8.     var contiene_links = document.getElementById('principal');
  9.         linksmenu = contiene_links.getElementsByTagName('button');  
  10.             for (i=0; i<linksmenu.length; i++) {
  11.                 if (linksmenu[i].addEventListener){
  12.                     linksmenu[i].addEventListener("click", function(){redirije(this)}, false);
  13.                 }else{ // <IE9
  14.                     if (linksmenu[i].attachEvent){
  15.                         linksmenu[i].attachEvent ("onclick", function () {redirije(this)});
  16.                     }  
  17.                 }
  18.             }
  19.     }

Por ejemplo para el boton:
Código HTML:
Ver original
  1. <td><button title="GestionaUsuarios" ....>

Y para que cada vez que navego entre páginas con AJAX, al final de cada fin de request, hago esto:

Código Javascript:
Ver original
  1. (aparte de hacer la instancia respectiva de XMlhttprequest)
  2.   function initReq(reqType,url,isAsynch){
  3.         //función que manda datos al servidor para validar usuario  
  4.         try{  
  5.  
  6.         request.open(reqType,url,isAsynch);
  7.        
  8.         request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset = UTF-8");
  9.        
  10.         request.onreadystatechange = function (){
  11.        
  12.        if(request.readyState==4 && (request.status==302 || request.status==200)){//transacción completada
  13.              document.getElementById("principal").innerHTML=request.responseText;
  14.              [COLOR="Red"][B][U]cargaEventos();[/U][/B][/COLOR]
  15.          }  
  16.        }
  17.  
  18.         request.send(null);
  19.  
  20.         }
  21.         catch(errv){
  22.             document.getElementById("respuesta").innerHTML= "<error>La aplicación no puede contactar con el servidor, por favor intentelo mas tarde</error>";
  23.         }
  24.       }


Graciaaaasss (espero que a alguien le sirva esto tanto como yo lo necesitaba!)