还有其他方法可以在上传之前检查文件的大小吗?要求是如果文件超出限制,表单不得提交。如果不是,我必须使用表单进行普通上传,而不必使用Flash将文件准确上传到服务器。
答案 0 :(得分:2)
还有其他方法可以在上传之前检查文件的大小吗?
不在JavaScript中,文件大小为not in the DOM。
答案 1 :(得分:1)
实例化SWFUpload时,需要传递两个参数:file_size_limit和file_queue_error_handler:
new SWFUpload({
file_size_limit: "10 MB",
file_queue_error_handler: queueErrorHandler,
[...]
})
然后:
function queueErrorHandler(file, errorCode) {
if (errorCode == SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT) {
alert("File exceeds the 10MB limit!");
}
}
在开始上传之前检查文件大小是否在限制范围内
答案 2 :(得分:1)
使用W3C FileAPI(至少由Firefox 3.6实现),你可以。
有关详细信息,请参阅此链接
http://hacks.mozilla.org/2009/12/w3c-fileapi-in-firefox-3-6/
干杯
答案 3 :(得分:1)
可以通过SWFUpload控件检查文件大小。只需将SWFUpload控件放在Web表单标记之外。告诉用户单击SWFUpload按钮并指向他的上传文件。使用javascript确定文件大小,然后根据需要使用此信息,例如填充验证函数。然后你的主表单需要让用户再次指向他们的上传文件,这个字段将用于实际上传文件。提交表单时,SWFUpload控件将被完全忽略,因为它不是主窗体的一部分。