脚本5:IE9中拒绝访问同一域上的iframe

时间:2012-07-14 15:42:46

标签: ajax gmail internet-explorer-9 asyncfileupload

我正在尝试使用iframe(通过AJAX)提交附加文件的表单。我正在使用rails& remotipart宝石。实际上我也尝试了jquery.form.js库,但没有运气。当我提交表格时,我得到了#34; SCRIPT5:访问被拒绝"仅在IE9中,当我从我的Gmail帐户重定向到该页面时。当我访问我的网站并提交附有文件的表单时,它工作正常,但是当我通过gmail的链接(其他电子邮件工作)访问网站时,它不起作用。我检查了它是如何工作的 - 它创建隐藏的iframe设置form.target = iframe.name(iframe的名称)& iframe.src = JavaScript的:假;提交表单时,它会抛出异常=" SCRIPT5:访问被拒绝"。我尝试过设置iframe.domain =我网站的域名但是没有工作 - iframe = $(""); 顺便说一下,我正在向同一个域名提交表格

有人解决了这个问题吗?

3 个答案:

答案 0 :(得分:1)

我对jQuery一无所知,但这是一个常见的javascript错误。 IE不允许从脚本提交附加文件的表单。 但是,如果您将表单放在单独的文件中并将其加载到iframe中,则frame.form.submit()将起作用。

答案 1 :(得分:0)

我建议你使用最新的JQuery(> jquery-1.8.0)。从版本1.8.0开始,他们解决了IE9的一些错误。

http://blog.jquery.com/2012/08/30/jquery-1-8-1-released/

答案 2 :(得分:0)

我有同样的问题。我使用的是与示例中相同的版本。该示例有效但我无法在我的应用程序中使其工作。

我正在使用Backbone,我认为它与动态创建表单有关,但遗憾的是我没有时间调试确切的问题。

我搬到https://github.com/blueimp/jQuery-File-Upload,现在可以了。