Задать вопрос
@Dreaded

Как удалить невалидные загружаемые файлы из формы на стороне клиента?

Имеется форма вида :
<input type="file" name="files[]" id="someId" multiple>

Пользователь загружает в форму файлы, и дальше я обрабатываю это событие примерно следующим образом:
$('#someId').change(function() {
var userFiles = this.files;
for(var i = 0; i < userFiles.length; i++) {
    if (userFiles[i]['size'] > 3145728) {
        userFiles.splice(i, 1);
    } else if (userFiles[i][type] != 'image/gif' || 'image/jpeg' || 'image/pjpeg' || 'image/png' || 'application/pdf' || 'text/plain') {
        userFiles.splice(i, 1);
    }
});

userFiles.splice(i, 1); к сожалению не работает. Как можно удалить из формы невалидные файлы(и сообщить об этом пользователю), что бы не загружать их лишний раз на сервер? Может быть есть другой более эффективный способ? Запрос отправляется ajax'ом
  • Вопрос задан
  • 131 просмотр
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alexalexes
1. Используйте FileReader для полного контроля содержимого предоставляемых файлов;
2. Предупреждайте об невалидности файлов пользователя в процессе включения их в форму;
3. Не включайте из FileReader невалидные файлы в выборку данных для отправки по ajax.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы