Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/09/2011, 13:18
Avatar de destor77
destor77
 
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 20 años, 1 mes
Puntos: 43
llamada ajax que hace cosas raras

Hola,
estoy intentando hacer mi framework php que funciono 100% con ajax, para esto estoy intentando usar esté código:
Código Javascript:
Ver original
  1. function requestAjax(link){
  2. var url ;
  3.     url = link;
  4.     $.ajax({
  5.     url: url,
  6.     cache: false,
  7.     success: function(html){
  8.         $("#"+contenedor).empty();
  9.         $("#"+contenedor).append(html);
  10.     }
  11.     });
  12.  
  13. $(document).ready(
  14.     function() {
  15.         $(".ajax").click(function(){
  16.             presionEnlace($(this).attr("href"));
  17.             return false;
  18.         });
  19.         function presionEnlace(link)
  20.         {
  21.             console.log(link);
  22.             var pagina = link;//$(this).attr("href");
  23.             var x = $("#wrapper");
  24.             var y = $("#preloader");
  25.             x.ajaxStart(inicioEnvio);
  26.             envioAjax(pagina);
  27.             //x.load(pagina);
  28.             x.ajaxStop(paroEnvio);
  29.             return false;
  30.         }
  31.  
  32.         function inicioEnvio()
  33.         {
  34.             var x = $("#preloader");
  35.             var y = $("#wrapper");
  36.             y.css({
  37.                 'opacity' : 0.3
  38.             });
  39.             x.css("display","block");
  40.         }
  41.  
  42.         function paroEnvio(){
  43.             var x = $("#preloader");
  44.             var y = $("#wrapper");
  45.             x.hide();
  46.             y.css({
  47.                 'opacity' : 1
  48.             });
  49.         }
  50. }

como verán lo que hago es que cada vez que se hace click en un link que tenga la clase ajax haga el llamado por ajax, el html que uso en la botonera por ejemplo es este:
Código HTML:
Ver original
  1. <div id="sidebar">
  2.     <ul class="sideNav">    
  3.             <li><a href="index.php?controlador=configuracion" <? if ($_REQUEST['controlador']=="configuracion"){echo 'id="active" class="ajax"';} else {echo 'class="ajax"';}?>>Configuración del Sitio</a></li>
  4.             <li><a href="index.php?controlador=seo" <? if ($_REQUEST['controlador']=="seo"){echo 'id="active" class="ajax"';} else {echo 'class="ajax"';}?>>Opciones SEO</a></li>
  5.             <li><a href="index.php?controlador=logAccesos" <? if ($_REQUEST['controlador']=="logAccesos"){echo 'id="active" class="ajax"';} else {echo 'class="ajax"';}?>>Log de Accesos</a></li>
  6.     </ul>
  7. <!-- // .sideNav -->
  8. </div>

Hasta ahí todo bien, el problema lo tengo con lo siguiente, cuando entro a la pagina y hago click en el link de configuracion del sitio y me entra por ajax de lo mas bien, pero si después quiero hacer click en opciones seo no me entra por ajax. Básicamente lo que sucede es que la primera vez entra por ajax,el segundo click que haga en cualquier link no entra por ajax, el tercero (aún haciendo click en el mismo que hice antes) si entra, y así sucesivamente. Y no entiendo por que :(
Espero que se me haya entendido y que me puedan ayudar desde ya muchas gracias!