繁体   English   中英

在IE中文件输入更改时,jQuery表单自动提交

[英]jQuery form auto-submit upon file input change in IE

这个主题已经在这个论坛上讨论过,但我还没有找到一个有效的IE解决方案(测试7,8和9)。 在其他浏览器中正常工作。 我希望有人有解决方案。 提前致谢!

这是关于什么的:

我想摆脱标准文件输入元素,所以我添加了一个图像。 点击后会显示浏览窗口。 选择文件后,将提交表单。 由于浏览器的安全性,我暂时显示文件输入元素,焦点和隐藏它。

问题:

IE显示“访问被拒绝”。 jquery.1.7.2.js第3241行,第6个字符 没有显示/隐藏技巧,问题仍然存在。 当我单击浏览按钮并选择一个文件时,表单确实已提交。 问题似乎是文件浏览操作是由另一个元素触发的:

完整代码:

    $('#fakeupload').click(function(){
        $('#form').show();
        $('#realupload').focus().trigger('click');
        $('#form').hide();          
    });

    $('#realupload').change(function(){
        $('#form').show();
        $('#form').submit();
        $('#form').hide();          
    });

由于微软中一群不那么聪明的人做出了决定,因此Internet Explorer 8阻止了您的“拒绝访问”。

如果您尝试在输入类型文件中触发click方法,那么稍后您将在提交中遇到问题。

这是唯一可以做这种事情的浏览器。

再次感谢Microsoft,您的浏览器是“工作”> :(

您是否尝试为浏览器访问的文件分配权限? 你清除缓存了吗? 尝试设置到期日期? 尝试用css(“display”,“block”)/ css(“display”,“none”)替换show()/ hide()

这仍然是一个无法解决的问题。 为了使其工作,用户必须单击浏览按钮。 这里的技巧是修改浏览按钮,使其适合图像。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM