Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Frameworks JS (http://www.forosdelweb.com/f127/)
-   -   Problema Incluyendo Scripts con Ajax (http://www.forosdelweb.com/f127/problema-incluyendo-scripts-con-ajax-386560/)

ibito 18/04/2006 13:33

Problema Incluyendo Scripts con Ajax
 
Hola.

Tengo un script hecho en ajax, pero quiero incluir un calendar que esta hecho en javascript, incluyo el script en la misma página en la que mando llamar por medio de ajax a otro php, pero el php que mando llamar, aun poniendo lo que supuestamente necesito (<script>DateInput('YYYY-MM-DD', 0)</script>).

Supongo que lo que pasa es que no se puede poner un script que esta siendo llamado desde otra parte pero... no se, si alguien me entiende y puede ayudar :neurotico


Gracias

B** 18/04/2006 14:32

Por lo que pude entenderte, lo q quieres hacer es meter un codigo javascript en tu pagina... si es eso.. pues lo puedes incrustar asi:
<HEAD>
<SCRIPT SRC="tucodigo_en_javascript.js">
</SCRIPT> </HEAD>
Sera eso lo q quieres o ni al caso mi respuesta?

pableke 27/04/2006 12:56

Hola ibito yo tengo tu mismo problema tengo un codigo javascript dentro de una pagina php (pagina1.php) que introzuco en un <div></div> de otra pagina (pagina2.php) mediante ajax.

Yo la unica manera que he encontrado para solucionar eso es traducrel codigo javascript a codigo php, xq creo que lo que te devuelve ajax (ajax.responseText) es codigo html que no interpreta el cliente, solo lo muestra, así que tiene que venir ya interpretado desde el servidor.

De todas formas si alguin sabe alguna otra forma de hacer eso me gustaria saberla :).

pupinito 03/05/2006 07:50

Hola, tengo el mismo problema.
Si quiero actualizar en contenido de un <div> .... </div> en pagina1.html con una pagina2.html usando AJAX, y esa pagina2 tiene un <script> algo </script>, cuando actualizo el contenido, queda <div>... <script> algo </script>... </div> en pagina1.html, pero no se ejecuta el script, salvo que lo llame mediante algun evento onclick, onmouseover, etc. Si alguien puede ayudar, gracias

Saludos

rafadc 03/05/2006 10:57

De momento lo tengo medio resuelto. En el head creo un div con id "globalHeadDeclaraciones" a cada respuesta que obtengo de AJAX le paso esta funcion

Código:

function launchJavascript(responseText) { 
    ScriptFragment = '(?:<script type="text/javascript" src=")((\n|.)*?)(?:">)';
         
  var match    = new RegExp(ScriptFragment, 'img');
  var scripts  = responseText.match(match);

  // Limpiamos la zona de declaraciones
  while (myGetElementById('globalHeadDeclaraciones').hasChildNodes())
    myGetElementById('globalHeadDeclaraciones').removeChild(myGetElementById('globalHeadDeclaraciones').firstChild);
 
  // hacemos las declaraciones que correspondan a la página en cuestión
  if(scripts) {
      var js = '';
      for(var s = 0; s < scripts.length; s++) {
          match = new RegExp(ScriptFragment, 'im');
          scr = document.createElement('script');
              scr.type = "text/javascript";
              scr.src = scripts[s].match(match)[1];
              myGetElementById('globalHeadDeclaraciones').appendChild(scr);                 
      }
  }
 
  var ScriptFragment = '(?:<script.*?>)((\n|.)*?)(?:</script>)';
         
  var match    = new RegExp(ScriptFragment, 'img');
  var scripts  = responseText.match(match);

  if(scripts) {
      var js = '';
      for(var s = 0; s < scripts.length; s++) {
          var match = new RegExp(ScriptFragment, 'im');
          js += scripts[s].match(match)[1];
      }
      eval(js);
  }
       

}

El problema que tengo es que si hay dos declaraciones de archivos con javascript externos solamente me tiene en cuenta una. ¿Alguien sabe porque?


La zona horaria es GMT -6. Ahora son las 06:11.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.