Javascript 在iframe中的隐藏提交按钮上使用click()可以在FF和Chrome中工作,但在IE和Opera中不起作用

Javascript 在iframe中的隐藏提交按钮上使用click()可以在FF和Chrome中工作,但在IE和Opera中不起作用,javascript,forms,iframe,Javascript,Forms,Iframe,在我的站点的父页面上,我使用一个包含文件上传表单的iframe(带有display:none submit按钮),允许用户在不重新加载父页面的情况下上传个人资料图片。该方法在Chrome和FF上使用以下任一功能(“NoReloadiframe”是iframe的id,“iframePicButton”是显示的id:隐藏iframe的图片上传表单中无提交按钮): 以下是iframe中表单的代码: <form action="#" enctype="multipart/form-data" me

在我的站点的父页面上,我使用一个包含文件上传表单的iframe(带有display:none submit按钮),允许用户在不重新加载父页面的情况下上传个人资料图片。该方法在Chrome和FF上使用以下任一功能(“NoReloadiframe”是iframe的id,“iframePicButton”是显示的id:隐藏iframe的图片上传表单中无提交按钮):

以下是iframe中表单的代码:

<form action="#" enctype="multipart/form-data" method="post" id="HiddenUserPicForm">
    <button type="submit" name="iframepicbutton" id="iframePicButton" style="display:none">    
    </button>
    <input type="file" name="ifrpic" id="ifrfile">
</form>

简言之,单击父页面上的“文件上载”按钮将调用HiddenPicButton(),该按钮单击iframe内的“隐藏”按钮,文件将在不重新加载父页面的情况下上载

但是,Opera或IE中都不会出现隐藏按钮单击(chrome和FF完全按照预期工作)。有没有关于如何补救的建议?作为备份,我将恢复到最初使用的页面重新加载方法,或者尝试使用Javascript检测浏览器(使用此处显示的方法:)用户正在使用iframe提交按钮导航,并使用onLoad功能隐藏IE和Opera的iframe提交按钮。

尝试:

function HiddenPicButton() {
  document.getElementById('NoReloadiframe').contentWindow.document.forms[0].submit();
}

为什么不直接调用
submit()
在表单上?将尝试此功能…感谢您的建议感谢您的建议…表单现在没有在Chrome中提交…我将对此做更多的工作…如果您将正确的url设置为表单的操作属性,会发生什么情况?抱歉…我刚刚重新检查了我的第一个功能…实际上在所有4个浏览器中都有效…不确定我为什么单击上载按钮20次,之前在Opera和IE上不起作用……第二个功能在所有浏览器中都不起作用。。
function HiddenPicButton() {
  document.getElementById('NoReloadiframe').contentWindow.document.forms[0].submit();
}