0

以下用于上传图像和预览的 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>
4

1 回答 1

2

微软提供了一个对象来处理文件FileSystemObject,文档在这里

它确实可以正确获取文件内容,但有两个限制使其在大多数情况下无用:

  • “初始化并编写未标记为安全的 ActiveX 控件”必须为“启用”;
  • “将文件上传到服务器时包括本地目录路径”必须为“启用”。

这两个选项在 IE 的安全设置中,我认为用户在正常情况下不会将它们设置为“启用”。

于 2013-01-24T15:06:26.937 回答