Как отправить через formData массив объектов со вложенным объектом

Рейтинг: 0Ответов: 1Опубликовано: 24.01.2023

Отправляю через formData массив объектов следующего вида:

введите сюда описание изображения

Проблема с отправкой поля tags - в значение ключа почему-то идёт object Object:

введите сюда описание изображения

Обработка отправляемого массива объектов:

for (let key in addTagsResultsObj) {
  if (key === 'operations_ids') {
     documentsIDArr.forEach((id, idx) => {
        formdata.append(`operations_ids[${idx}]`, id);
     });
  } else if (key === 'tags') {
     addedTagsArr.forEach((item, idx) => {
        formdata.append(`tags[${idx}]`, item);
     });
  } else {
       formdata.append(key, addTagsResultsObj[key]);
    }
  }

Подскажите пожалуйста, как мне правильно отправить эти вложенные объекты?

Ответы

▲ -2
let formData = new FormData();
                formData.append('key1', ...);
                formData.append('key2', ...);
                formData.append('...', ...);
                formData.append('keyN', ...);

                $.ajax({
                    url: 'https://your/url/here.html.php',
                    method: 'post',
                    data: formData,
                    contentType: false,
                    processData: false,
                    success: (response) => {
                       ...
                    },
                    error: (response) => {
                           ...
                    },
                })
                .done(() => {
                    // If need to update data
                    formData.delete('key1');
                    formData.delete('key2');
                    formData.delete('...');
                    formData.delete('keyN');
                });