FileSize through javascript


FileSize through javascript

我想在客户端使用javascript检查用户选择的文件的文件大小。我使用的代码是:

<script type="text/javascript">
 var myFile = document.getElementById('myfile');
  //binds to onchange event of the input field
  myFile.addEventListener('change', function() {
  //this.files[0].size gets the size of your file.
   alert(this.files[0].size);
   });
 </script>

但当我运行代码,选择一个文件时,什么都不会发生。任何人都告诉我我做错了什么

您的代码运行良好(在带有File API的HTML5浏览器中)。确保您的<script>块在<input>元素之后。在这个jsfiddle中,它在"加载"处理程序中。

使用jquery:对我有用

http://jsfiddle.net/UUdcy/

$('#myfile').change( function() {
    var fileInput = $("#myfile")[0];
    var imgbytes = fileInput.files[0].fileSize; // Size returned in bytes.
    $('body').append('<p>'+imgbytes+'</p>');
});​

您无法使用javascript获取文件大小。浏览器中的安全性可防止Javascript访问文件系统。我相信,你需要使用Flash、ActiveX或其他能够被授予权限的东西来做这件事。

编辑:如果你使用的是HTML5文件API,那么我想你可以做到这一点,但由于你没有在任何地方指出,我不认为这是事实。我会把HTML作为标签放在你的帖子上。