JS Submit()访问被拒绝IFrame IE

时间:2012-05-07 12:41:14

标签: javascript jquery html

我有一个iframe内部的表单,其输入类型文件带有onchange事件,每当修改输入时都会提交表单,然后我在IE中得到错误只能在其他浏览器中使用。

e.g。 (简化版)

<form id="form1">
<input type="file" id="_file" onchange="document.forms[0].submit();$('#form1').hide()" />
<input type="button" onclick="$('#_file').click();" />
</form>

然后IE 8给出了这个错误:

SCRIPT5: Access is denied.

我相信这样一个事实,即IE认为从用户未触发的事件提交安全风险,或者它可能与iframe中发生的事实有关。关于如何解决这个问题的任何想法?

修改

看起来问题可能与输入[type:file]被隐藏的事实有关,它的宽度和不透明度都很小:0。使它显示并在其中放置一个提交按钮它工作,但我需要它工作没有输入[类型:文件]显示和没有提交按钮。但是,尝试使用输入[type:file]显示并在onchange中提交仍然无效。

1 个答案:

答案 0 :(得分:4)

似乎问题是IE在编程设置和提交文件输入时不喜欢它。现在发现这个放弃了。当用户在IE中时,我选择使用Jquery uploadify作为后备。这会对闪存造成不必要的依赖,但这是我能提出的最佳选择。