Получить размер файла в JavaScript для нескольких файлов - PullRequest
1 голос
/ 16 февраля 2012

Я использую плагин jQuery Form для загрузки своих файлов через AJAX, и я также хочу проверить, не превышает ли размер каждого файла больше 20 МБ, прежде чем отправлять их на сервер. Я обнаружил этот пример HTML5, но я не могу понять, как соединить его с моим кодом здесь.

$(document).ready(function(){
    $('.form-videos').ajaxForm({
        success : function(data){
            alert(data);
        },
        beforeSubmit : function(){
            var fileInput = $('.form-videos :input[type=file]');
            var totalFiles = $('.form-videos :input[type=file]').get(0).files.length;

            for (i = 0; i < totalFiles; i++)
            {
                alert('what?'); // This works and prints out correctly for every file
                // How do I get current file size?
            }
        }
    });
});

Ответы [ 2 ]

2 голосов
/ 16 февраля 2012

Вы должны быть в состоянии;

var files = $('.form-videos :input[type=file]').get(0).files;
for (i = 0; i < files.length; i++)
{
   if (files[i].size > 20971520) ...
}
0 голосов
/ 16 февраля 2012

См. Пример здесь .

В вашем примере length - это просто количество выбранных файлов. Вам необходимо получить доступ к отдельным File объектам и их size свойству.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...