Il problema è eseguire uno script javascript dopo aver caricato una pagina dinamicamente con AJAX in IExplorer.
Si perchè con Firefox e Safari funziona, mentre su IE no.
.....nella funzione che chiama l'oggetto xmlhttp...
if (xmlhttp.readyState == 4) {
setAndExecute(idDestination, xmlhttp.responseText)
}
dove
function setAndExecute(divId, codeHtmlJs) {
var objDiv = document.getElementById(divId);
objDiv.innerHTML = codeHtmlJs;
var x = objDiv.getElementsByTagName("SCRIPT");
for( var i=0; i < x.length; i++) {
//eval(x[i].innerHTML); safari 1.3
eval(x[i].text);
}
}
la pagina che richiamo contiene il seguente codice
<html>
<head>
<SCRIPT TYPE="text/javascript">
alert('pippo');
</SCRIPT>
</head>
<body>
</body>
</html>
mettendo degli alert scopro che objDiv.getElementsByTagName("SCRIPT") risulta vuoto con IE, eppure ho messo SCRIPT in maiuscolo proprio per IE.
come faccio a lanciarlo da IE?
grazie.