post массив input'ов и multiple

299
25 июля 2022, 23:00

На странице есть какие-то статические поля и динамически добавляется таблица с инпутами к примеру такая:

<div class="row">
    <input type="text" name="someText[0]">
    <input type="text" name="altImg[0]">
    <input type="file" name="img[0]" multiple="">
</div>
<div class="row">
    <input type="text" name="someText[1]">
    <input type="text" name="altImg[1]">
    <input type="file" name="img[1]" multiple="">
</div>
.............
<div class="row">
    <input type="text" name="someText[n]">
    <input type="text" name="altImg[n]">
    <input type="file" name="img[n]" multiple="">
</div>

Хотел сделать запрос как делал обычно с помощью PHP, но на форме есть div "file drag and drop", и эти данные не передаются. Поэтому нужно прибегнуть к помощи JS. Смотрю в сторону XMLHttprequest. Я не ошибся? На данный момент камнем преткновения стали 2 проблемы и моих знаний в JS не хватает решить их:

  1. Я нашел примеры работы с multiple, где они перебирались в цикле перед отправкой на сервер. Что-то типа:

    for(var i = 0; i < fileInput.files.length; ++i){
       data.append('file[]',fileInput.files[i]);
    }
    

Получается, будет цикл в цикле, где сначала перебираются все name="img[n]"?

  1. Не понимаю как к "этому добру" прикрепить остальные поля name="someText[n], altImg[n] и т.д.?

Буду благодарен за пример кода или "пинок в правильном направлении" .

Answer 1
<form enctype='multipart/form-data' ...
READ ALSO
Почему обнуляются значения часов, минут и секунд у обеих переменных?

Почему обнуляются значения часов, минут и секунд у обеих переменных?

Почему после выполнения строки startTimesetHours(0,0,0); обнуляются значения у currentTime?

191
Event.target в JS

Event.target в JS

Помогите, пожалуйста, разобраться в работе event:

248
Передача данных из JSON файла в JavaScript

Передача данных из JSON файла в JavaScript

Здраствуйте! Есть JSON файлик с данными

233
Ошибка при импорте mdi во Vue.js

Ошибка при импорте mdi во Vue.js

День добрыйЯ только начинаю изучать Vue

200