Имеется форма, в которой вводятся Имя, Фамилия и несколько фото (multiple).
Через input добавляю например 2 фото, затем хочу добавить еще 1. Но при добавлении последнего, у меня теряются предыдущие 2.
Как сделать обработчик, чтобы решить этот вопрос?
Доп. нюанс: Если файл не соответствует размеру или типу, то он отображается ниже кнопки input, но перечеркнут. При этом его можно удалить (это я потом сам сделаю).
<form action="" method="post" enctype="multipart/form-data" name="anketa">
<input type="file" name="images[]" multiple id="imageUploader">
<input type="text" name="name" placeholder="Имя" id="name">
<input type="text" name="lastname" placeholder="Фамилия" id="lastname">
<input type="submit">
</form>
<script>
const imageUploader = document.getElementById("imageUploader");
let imageArrAll = []; // Все загруженные файлы, в том не подходящие по типу или размеру
let imageArrFilter = []; // Отфильтрованные файлы
imageUploader.addEventListener('change', (e) => {
сonst files = e.target.files;
// Здесь нужно:
// 1. Объединить добавленные файлы с уже имеющими в массиве (без дублей), и записать в массив imageArrAll
// 2. Проверить все файлы на соответствие типу и размеру, и записать их в массив imageArrFilter
// 3. Изменить массив в форме в форме images[] на файлы из п.2.
});
</script>