如何在不使用javascript中的activex的情况下从客户端获取文件大小?

Dip*_*dhi 6 javascript internet-explorer file-upload

是否有任何其他方式来获得在客户端文件大小不使用ActiveXIE

我从客户端获取文件大小,但IE打开ActiveX控件的安全通知弹出窗口.有没有其他方法来获取文件大小或隐藏ActiveX弹出窗口?

这是在客户端获取文件大小的代码.

<html>
<body>
<form id="file">
<input type="file" id="loadfile" />
<input type="button" value="Image Size" onclick="testSize()" />
</form>
<script type="text/javascript">

function testSize(){
    var browserInfo = navigator.userAgent.toLowerCase();

    if(browserInfo.indexOf("msie") > -1){
        /* IE */
        var filepath = document.getElementById('loadfile').value;
        alert(filepath + " Test ");
        var myFSO = new ActiveXObject("Scripting.FileSystemObject");
        var thefile = myFSO.getFile(filepath);
        var imgbytes = thefile.size;
        alert( "name " +  thefile.name + "Size " +  thefile.size );
    }else{
        /* Other */
        var file = document.getElementById('loadfile').files[0];
        alert( "name " +  file.name + "Size " +  file.size );
    }
}
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

提前致谢.

Dip*_*dhi 3

我得到了解决方案。

代码没有真正的问题,问题在于 Internet Explorer 浏览器的安全设置。通常,当您想要打开远程服务器上的文本文件或某些 Excel 文件时,您会遇到此类错误

转到 internetoptions < security < customlevel < 初始化和脚本活动 x 控件未标记为安全脚本并将其标记为启用,我认为您的问题将被消除

谢谢。