|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Jul 2006
Messaggi: 152
|
[AJAX + JAVASCRIPT] Problema con script nella response
Non so se si puo' fare una cosa del genere.
In pratica vorrei mettere in un <div> gestito con AJAX uno script javascript, in modo tale che dinamicamente il server mi possa tornare script diversi. Codice HTML:
<div id="AJAXDIV"> <!-- CODICE HTML --> <script language="javascript"> function f() { ... } </script> </div> Codice:
<!-- CODICE HTML --> <script language="javascript"> function f() { ... } </script> Da alcune prove mi pare tuttavia che mentre il codice HTML viene aggiornato correttamente, nel DIV rimanga il JAVASCRIPT vecchio che invece vorrei "sovrascrivere" con quello nuovo tornato dal server. Qualcuno mi puo' aiutare ? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Si si può fare è semplice !!!
Codice HTML:
<div id="AJAXDIV"></div> Codice:
function esegui_richiesta_riempi() { //esegue la richiesta. document.getElementById("AJAXDIV").innerHTML=request.responseText; } |
![]() |
![]() |
![]() |
#3 |
Junior Member
Iscritto dal: Jul 2006
Messaggi: 152
|
Anchio ho provato cosi' ma mentre il contenuto HTML del DIV viene rimpiazzato (all'inizio nel DIV c'e' gia' del codice HTML e uno script) , lo script rimane quello vecchio e quello nuovo non viene caricato.
Ho provato anche la variante: Codice HTML:
<div id="AJAXDIV"> SOLO TAG HTML </div> <script id="SCRIPTDIV"> SOLO CODICE JAVASCRIPT </script> Codice HTML:
var splitted = request.responseText.split("<separator>");
document.getElementById("AJAXDIV").innerHTML=splitted[0];
document.getElementById("SCRIPTDIV").innerHTML=splitted[1];
di AJAXDIV e SCRIPTDIV nella risposta), nel senso che AJAXDIV viene rimpiazzato ma SCRIPTDIV no (ci rimane lo script che c'era inizialmente) Credo che ci siano delle limitazioni nelle modifica dei JAVASCRIPT; cercando in rete pare che si possa aggiungere / modificare uno script ma solo mettendo il corpo dello script in un file esterno. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:29.