我从一个控制器返回以下内容,在当前所有浏览器中,ff,chrome和IE10会导致我的iframe触发onload
事件:
return new ContentResult { Content = "", ContentType = "text/html", ContentEncoding = System.Text.Encoding.Unicode };
但是在IE8中它不起作用,我一直在假设我的客户端代码被破坏而没有在iframes onload事件上添加监听器,但我正在使用来自{{的代码3}}:
var oIFrame = document.createElement('iframe');
oIFrame.style.display = 'none';
if(oIFrame.attachEvent)
{
oIFrame.attachEvent('onload', fnIFrameCallback);
}
else
{
oIFrame.onload = fnIFrameCallback;
}
document.body.appendChild(oIFrame);
有谁知道IE8是否需要从我的控制器返回一些实际内容而不是空Content=""
答案 0 :(得分:4)
此代码在IE 8中运行良好...
function fnIFrameCallback(){
alert("test iframe is now loaded.");
}
function loadLocalIframe(){
var oIFrame = document.createElement('iframe');
oIFrame.style.display = 'none';
if(oIFrame.attachEvent)
{
oIFrame.attachEvent('onload', fnIFrameCallback);
}
else
{
oIFrame.onload = fnIFrameCallback;
}
document.body.appendChild(oIFrame);
}