【发布时间】:2013-01-24 13:03:21
【问题描述】:
以下用于上传图像和预览的 Javascript 编码在 chrome 中可以正常工作,但在 IE8 中无法正常工作。我尝试了一整天,但我无法解决这个问题。任何人都可以帮助我解决这个问题。提前致谢
<form name="addpoll" action="" method="post" id="addpoll" enctype="multipart/form-data" class="polladdform" onsubmit="return validation();">
<input type="button" onclick="HandFileButtonClick();" value="Browse" id="firstremove" style="margin-top: 30px;" class="addmultiple">
<input type=file name="choiceimg1" id="chimg1" value ="Select" onchange="readURL(this)" style="display:none;">
<img src="#" name="viewimg1" class="addmultiple" id="viewimg1" height="70px" width="85px" style="display:none"/>
<script>
function HandFileButtonClick()
{
document.addpoll.choiceimg1.click();
}
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
var ss=$(input).attr('name');
var n=ss.split("choiceimg");
reader.onload = function (e) {
$('#viewimg'+n[1]).css({'display':'block','margin-left':'332px','margin-top':'-88px'});
$('#viewimg'+n[1]).attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
</script>
【问题讨论】:
-
FileReader在 ie8 中,你在开玩笑吗? -
这就是为什么我要求 FileReader 的任何其他具有相同功能的函数进行上述编码
-
那我猜你需要改写你的问题。并删除所有关于“我尝试了一整天,但我无法解决这个问题”的废话。
-
旧版或非现代浏览器(IE 就是一个很好的例子)不支持 JavaScript 的 File API。在 IE 上使用 JavaScript 读取文件的唯一方法是使用不安全的 ActiveX“Scripting.FileSystemObject”,但用户首先必须允许您的权限,除非它是内部网络,否则不会发生。