2

如何捕获 iframe 中引发的异常?

这是我的代码:

家长:

        iframe = document.createElement("iframe");
        iframe.src = "../a.aspx";
        iframe.style.display = "none";
        document.body.appendChild(iframe);

和a.aspx里面的代码:

    protected void Page_Load(object sender, EventArgs e)
    {
            GenerateKey();
            //This function throws an exception, and I want to catch it in the parent window (javascript)
    }

我想在打开 iframe 的页面中捕获异常并显示警告框。我尝试了 iframe.contentWindow.onerror,但没有成功。

谢谢您的帮助,

英巴尔。

4

1 回答 1

1

跨域可能不允许您控制 iframe。在您的 iframe 页面中,您可以捕获它的异常并调用父函数来显示它。

try{
//something
}catch(e){
   window.top.some_public_function(e);
   //window.parent.some_public_function(e) is also work
}
于 2012-07-29T08:51:27.707 回答