Foros del Web » Programando para Internet » Javascript »

Problema con llamada a js externo desde ajax

Estas en el tema de Problema con llamada a js externo desde ajax en el foro de Javascript en Foros del Web. Hola todos! como dice el título, estoy queriendo incluir un archivo js (que se encuentra en jcart/js/jcart.js) en uno llamado load_data.php, que, a su vez, ...
  #1 (permalink)  
Antiguo 23/06/2012, 15:33
 
Fecha de Ingreso: octubre-2009
Mensajes: 107
Antigüedad: 15 años
Puntos: 2
Problema con llamada a js externo desde ajax

Hola todos! como dice el título, estoy queriendo incluir un archivo js (que se encuentra en jcart/js/jcart.js) en uno llamado load_data.php, que, a su vez, éste es llamado desde pagination.php el cual tiene la siguiente función:
Código:
        <script type="text/javascript">
            $(document).ready(function(){
                function loading_show(){
                    $('#loading').html("<img src='images/loading.gif'/>").fadeIn('fast');
                }
                function loading_hide(){
                    $('#loading').fadeOut('fast');
                }                
                function loadData(page, perPage){
                    loading_show();                    
                    $.ajax
                    ({
                        type: "POST",
                        url: "load_data.php",
                        data: { page: page,
								perPage: perPage
								},
                        success: function(msg)
                        {
                            $("#container").ajaxComplete(function(event, request, settings)
                            {
                                loading_hide();
                                $("#container").html(msg);
                            });
                        }
                    });
                }
                loadData(1,8);  // For first time page load default results
                $('#container .pagination li.active').live('click',function(){
                    var page = $(this).attr('p');
                    var per_page = document.formSelect.perPages.options[document.formSelect.perPages.selectedIndex].value;
                    loadData(page,per_page);
                    
                });           
                $('#inpGoTo').live('change',function(){
                    var page = parseInt($('.goto').val());
                    var no_of_pages = parseInt($('.total').attr('a'));
                    var per_page = document.formSelect.perPages.options[document.formSelect.perPages.selectedIndex].value;
                    if(page != 0 && page <= no_of_pages){
						loadData(page,per_page);
                    }else{
                        alert('Enter a PAGE between 1 and '+no_of_pages);
                        $('.goto').val("").focus();
                        return false;
                    }
                    
                });
                

                $('#perPages').live('change',function(){
                    var per_page = document.formSelect.perPages.options[document.formSelect.perPages.selectedIndex].value;
                    loadData(1,per_page);
				});
               

            });
        </script>
Y tiene también los siguientes divs:
Código HTML:
<div id="loading"></div>
        <div id="container">
            <div class="data"></div>
            <div class="pagination"></div>
        </div> 
Donde, en "container" muestra la información que viene por load_data.php.

El tema es que, a los resultados paginados, le incorporé el carrito de compras de jCart. jCart da la posibilidad que, si se tiene javascript deshabilitado, se puede seguir operando mediante PHP. El tema que, en el resto de las páginas en las que no uso el paginador, anda perfecto jCart; cuando intento agregar un producto de los que me muestra el paginador, jCart funciona pero "en modo" PHP. Y lo que yo quiero es que funcione como en el resto del sitio, es decir, con javascript.
Por lo que deduje que no está tomando el
Código HTML:
<script type="text/javascript" src="jcart/js/jcart.js"></script> 
que había puesto en el archivo pagination.php. Entonces lo agregué a load_data.php pero tampoco lo toma.
Aclaro que el archivo load_data.php lo que hace es recibir por POST las variables que se mandan en la función javascript loadData del archivo pagination.php. Luego hace consultas contra la base de datos, y devuelve resultados concatenándolos en una variable $msg que luego se realiza un
Código PHP:
echo $msg
y con eso finaliza el archivo load_data.php

Básicamente lo que yo necesitaría saber si me pueden ayudar es cómo hacer para que el archivo js de jcart sea detectado en el load_data.php. Cómo insertarlo, llamarlo o algo para que se agreguen los productos al carrito con javascript y no con php (cuando se agrega con php, me actualiza la página y pierdo la paginación en la que me encuentre en ese momento).

Espero se haya entendido todo, cualquier cosa me dicen! Les agradezco desde ya por su ayuda!!

Saludos!!!
  #2 (permalink)  
Antiguo 23/06/2012, 23:38
Avatar de iukaeru  
Fecha de Ingreso: mayo-2012
Mensajes: 127
Antigüedad: 12 años, 6 meses
Puntos: 12
Respuesta: Problema con llamada a js externo desde ajax

Puedes usar mi función... la clave es EVAL() que aunque poco recomendada yo la aplico en éste caso específico de JS dentro de JS.

//Escribe ésto dentro de tus llamadas a script:
<script type="text/javascript" src="http://www.iukaeru.com/aa_sekuro/jajax.js"></script>

//Para actualizar la división pones:
viak("tu_pagina_interna.php", "nombre_id_div_a_actualizar");

//En tu página interna "PHP" lo que vayas a ejecutar en JS lo pones sin etiquetas <script> en //la parte de arriba de tu archivo y luego pones:

<<<pleromak;

algo así:

<?php

print '

alert("Esto se ejecutará dentro de una llamada AJAX");

<<<pleromak;

';

$variable = "Aquí lo que quieras";

?>
  #3 (permalink)  
Antiguo 24/06/2012, 21:15
 
Fecha de Ingreso: octubre-2009
Mensajes: 107
Antigüedad: 15 años
Puntos: 2
Respuesta: Problema con llamada a js externo desde ajax

Hola iukaeru, gracias por tu respuesta.
No logro entender donde incluir cada cosa de las que decis. Me podrías indicar cómo hacerlo respecto al código que puse arriba?
Muchas gracias y disculpá las molestias
  #4 (permalink)  
Antiguo 25/06/2012, 07:11
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 5 meses
Puntos: 1012
Respuesta: Problema con llamada a js externo desde ajax

la solución la tienes en http://www.disegnocentell.com.ar/notas2.php?id=176
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #5 (permalink)  
Antiguo 27/06/2012, 10:36
Avatar de iukaeru  
Fecha de Ingreso: mayo-2012
Mensajes: 127
Antigüedad: 12 años, 6 meses
Puntos: 12
Respuesta: Problema con llamada a js externo desde ajax

Es lo bueno de COMPARTIR (que cuando se enseña se aprende). Yo había creado una solución que he utilizado por mucho tiempo, pero viendo el aporte de ISABELM ya mismo me pongo a MEJORAR código.

Etiquetas: ajax, externo, funcion, html, js, llamada, php
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 13:41.