• User Attivo

    Ajax + tag script

    Ciao a tutti, ho un grosso problema con ajax che si verifica utilizzando IE.

    Ho una funzione che richiama una pagina e il suo contenuto va a modificare l'innerHtml di un div. All'interno del codice nuovo ci sono dei tag script che usando eval() su FF vengono eseguiti, con IE no.

    Cosa posso fare? Mi ritrovo un sito totalmente non funzionante con IE e ci sto sbattendo la testa da ore.

    Grazie mille!


  • User Attivo

    Ciao Raiken,
    quale versione di IE utilizzi?

    Tieni presente che nel caso si tratti di IE6,
    puoi anche rinunciare e passare alle versioni successive:
    è riconosciuto che IE6 fa schifo, a tal punto, che anche il portale YouTube
    ne ha rimosso il supporto.

    Comunque,
    potrebbe semplicemente essere un problema dovuto alla configurazione della sicurezza con cui è settato il browser IE che utilizzi.

    Con la versione 7 di IE, modificando le funzionalità avanzate,
    puoi decidere di utilizzare l'oggetto HttpXMLRequest nativo di IE oppure quello standard.

    :ciauz:


  • User Attivo

    Dopo 10 ore di lavoro ho risolto così:

    
    document.getElementById(risultatoCampo).innerHTML=risultato;
    
    			var regex = /<script\b[^>]*>([\s\S]*?)<\/script>/gm; 
    			var scripts = risultato.match(regex);  
    			eval(scripts[0].replace(/(<\s*\/?\s*)script(\s*([^>]*)?\s*>)/gi,''));
    
    

    Non è una grande cosa perché non mi legge i file di inclusione trovati nel codice ma per lo meno le function volanti da avviare le legge. Si stavo provando su IE6 nel mio PC e su IE7 nel portatile e il risultato era uguale 🙂