我无法让以下代码在 Internet Explorer 中运行,它似乎不想执行通过 Ajax 从服务器发回的代码,它什么都不做:
var ajax = new ActiveXObject('Microsoft.XMLHTTP');
ajax.open('GET','http://fromsitewebsite.com/javascript.js',true);
ajax.setRequestHeader('Connection','close');
ajax.onreadystatechange = function()
{
if ( ajax.readyState == 4 )
{
document.body.innerHTML += '<script type="text/javascript">'+ajax.responseText+'</script>';
}
};
ajax.send('');
我试过这样做,但仍然没有运气;
document.body.innerHTML += '<script type="text/javascript">('+ajax.responseText+')()</script>')
干杯
最佳答案
收件人get IE to handle the content of the script tag properly ,您需要设置 .text 值。
var scrElem = document.createElement('script');
scrElem.type = 'text/javascript';
scrElem.text = ajax.responseText;
document.body.appendChild(scrElem);
关于javascript - Ajax:将代码注入(inject) Internet Explorer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1577678/