【发布时间】:2011-05-10 14:36:11
【问题描述】:
当用户选择要上传的文件时,有没有办法在上传开始之前获得该文件的确切大小?我猜这需要在客户端使用 jQuery 或 JavaScript 完成。有什么想法吗?
【问题讨论】:
标签: php javascript jquery file-upload
当用户选择要上传的文件时,有没有办法在上传开始之前获得该文件的确切大小?我猜这需要在客户端使用 jQuery 或 JavaScript 完成。有什么想法吗?
【问题讨论】:
标签: php javascript jquery file-upload
$("#file_input_selector").bind('change', function(){
alert(this.files[0].size);
});
不确定所有兼容性问题,但这对我来说似乎工作得很好。
【讨论】:
我建议您查看 HTML5 File API。这一点,结合一些 JS 可能可以帮助你。我只说可能是因为我还没有机会浏览 HTML5 标准的这一部分。
http://www.w3.org/TR/FileAPI/#dfn-filereader
PHP 文件上传的工作方式,在文件上传之前或期间很难检查文件详细信息(因为文件在您的代码加载之前就已上传)。
我知道可以用其他语言(可能是 Perl 或 Python)做一些花哨的事情,直接使用脚本处理文件上传(脚本打开套接字并自行处理整个传输),但是 PHP 可以这是为您准备的,并代表您的脚本接受任何文件。如果文件不在 PHP 可接受的范围内,则文件将被丢弃,但仅在文件完全上传后才会被丢弃。
还有几个使用 Flash 实现的文件上传实现,但不是 ActionScript 编码器,我也帮不上什么忙。
【讨论】:
Javascript 无法检查文件大小(或访问文件系统)。您需要上传文件以获取大小
【讨论】:
在当前浏览器中,这不能在纯 Javascript 中完成。
您可以改用 Uploadify,它使用 Flash。
In non-IE browsers,你也可以use HTML5 to read files on the client。
【讨论】:
【讨论】: