@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'ом
  • Вопрос задан
  • 125 просмотров
Пригласить эксперта
Ответы на вопрос 1
@alexalexes
1. Используйте FileReader для полного контроля содержимого предоставляемых файлов;
2. Предупреждайте об невалидности файлов пользователя в процессе включения их в форму;
3. Не включайте из FileReader невалидные файлы в выборку данных для отправки по ajax.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы