我想在客户端使用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作为标签放在你的帖子上。