Foros del Web » Programando para Internet » Javascript » Frameworks JS »

No se ejecutan archivos js ni css despues de llamar con ajax

Estas en el tema de No se ejecutan archivos js ni css despues de llamar con ajax en el foro de Frameworks JS en Foros del Web. Muy buenos noches. Despues de mucho tiempo por aqui. La pregunta que me esta causando mucho dolor de cabeza es la siguiente. en una pagina ...
  #1 (permalink)  
Antiguo 18/05/2009, 16:35
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 19 años, 7 meses
Puntos: 1
No se ejecutan archivos js ni css despues de llamar con ajax

Muy buenos noches.

Despues de mucho tiempo por aqui.

La pregunta que me esta causando mucho dolor de cabeza es la siguiente.

en una pagina HTML tengo :

<input type="radio" name="rbt_Ubicacion" id="rbt_Ubicacion" value="BR" onclick=filtrarGaleria("Funciones/ajax_rutinas.php","BR") />Brazo
<input type="radio" name="rbt_Ubicacion" id="rbt_Ubicacion" value="PR" onclick=filtrarGaleria("Funciones/ajax_rutinas.php","PR") />Pierna
<input type="radio" name="rbt_Ubicacion" id="rbt_Ubicacion" value="HO" onclick=filtrarGaleria("Funciones/ajax_rutinas.php","HO") />Hombro

Entonces en la funcion de javascript(filtrarGaleria) tengo:

Código:
function nuevoAjax()

{ 
    var xmlhttp=false; 
    try 
    { 
        // Creacion del objeto AJAX para navegadores no IE
        xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); 
    }
    catch(e)
    { 
        try
        { 
            // Creacion del objet AJAX para IE 
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
        } 
        catch(E) { xmlhttp=false; }
    }
    if (!xmlhttp && typeof XMLHttpRequest!="undefined") { xmlhttp=new XMLHttpRequest(); } 
    return xmlhttp; 

}

function filtrarGaleria(url,ubicacion_tatto){ 

                                              
    var fragment_url = url+'?Id='+ubicacion_tatto; 
    alert(fragment_url);

    //abrimos la url 
    var ajax=nuevoAjax();    

    ajax.open("GET", fragment_url); 

    ajax.onreadystatechange = function() { 

        if (ajax.readyState == 4) { 
            //escribimos la respuesta 
            document.getElementById('DivGaleria').innerHTML = ajax.responseText;            
        } 
    } 

    ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 

    ajax.send(null); 
}
Como pueden ver la informacion se va a la pagina php ajax_rutinas.

que tiene:


Código PHP:
<?php
include("Clases/Bbdd.php");
include(
"Clases/Imagenes.php"); 


global 
$bd;
$var_ubicacion $_GET["Id"];

$SQL_FILTRAR_UBICACION       'SELECT * FROM imagenes WHERE ubicacion ="'.$var_ubicacion.'"';
$EJECT_SQL_FILTRAR_UBICACION $bd->bbdd_query($SQL_FILTRAR_UBICACION);

$aUbicacion       = array("BR" =>"Brazo""PR" =>"Pierna""HO" =>"Hombro" );
$ValorUbicacion   $aUbicacion[$var_ubicacion];
          
if (
$bd->bbdd_num($EJECT_SQL_FILTRAR_UBICACION) > 0)
{
    while(
$fila $bd->bbdd_fetch($EJECT_SQL_FILTRAR_UBICACION))
    {            
        
$imagenes = new Imagenes($fila['pk_imagen'], $fila['ubicacion'], $fila['descripcion'], $fila['imagen'], $fila['fecha_creacion']);

        
$imagenes->setPk_Imagen($fila['pk_imagen']);
        
$listado[]=$imagenes;
    }
//Fin de While

    
echo '<ul>';
    foreach (
$listado as $key=>$valueImagen)
    {  
        echo 
'<li><a href="Administracion/Imagenes/Fotografias/'.$valueImagen->getImagen().'" rel="lytebox" title="'.$valueImagen->getDescripcion().'"><img src="Administracion/Imagenes/Fotografias/'.$valueImagen->getImagen().'" width="100" height="100"  border="0"/></a><li>'
    }
    echo 
'<ul>';
          
}
else
{
  echo 
'No existen Imagenes seleccionadas';
}
?>
Pero si se dan cuenta esto imprime una lista con imagenes(que lo hace correctamente), entonces lo que tiene que hacer es que cuando se presiona me tiene que llamar a la relacion :

rel="lytebox"

Lo que tiene que hacer es mostrar una ventana solo con el dibujo a su tamaño real, pero no me lo hace, me lo muestra en una pagina aparte.

Lo raro es que cuando lo ejecuto sin hacer uso de ajax(en cualquier otra pagina) me va bien el litebox.js, jquery.js y los css del litebox.

Que puedo hacer para que estos script(litebox.js, jquery.js) y los css se jecuten correctamente con el ajax???


Gracias y saludos a todos
  #2 (permalink)  
Antiguo 18/05/2009, 17:26
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: No se ejecutan archivos js ni css despues de llamar con ajax

Tienes que buscar en la documentación del litebox.js, como hacer manualmente una llamada a la función init() o alguna parecida, una vez que la tengas la vas a tener que mandar llamar después de agregar la respuesta que viene desde AJAX.

Esto es porque por defecto litebox.js no tiene ningún conocimiento de AJAX y por eso no "agrega" el código que necesita a las imagenes que vienen por AJAX.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:10.