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

Как отправить FormData при помощи JS?

Собираю Данные для отправки Post запроса и отправляю на сайт.
Но данным методом я не перехожу по ссылке туда, куда я послал запрос.
В инете 100500 тем про fetch/ajax но мне он не нужен.
Мне нужно имитировать простую отправку формы с переходом.

// let stat = {}

let form = new FormData;
for (let i =0; i<stat.length; i++){
  form.append(stat[i].name,stat[i].value) // тут идет наполнения firmData
});
let request = new XMLHttpRequest();
request.open("POST", "/");
request.send(form);
  • Вопрос задан
  • 263 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 3
dima9595
@dima9595
Junior PHP
не перехожу по ссылке туда
Что вы подразумеваете под "не перехожу"?
Если вы имеет ввиду переход на страницу, то тогда вам нужно делать редирект. Если не ошибаюсь, то это так пишется: document.location.href = 'url';
Ответ написан
@Keppp
const options = {
  method: 'post',
}

if (form instanceof FormData) {
  set(options, 'body', form);
} else {
   set(options, 'body', JSON.stringify(data));
}

fetch('url', options);
Ответ написан
Комментировать
zkrvndm
@zkrvndm
Архитектор решений
Если вам нужен реальный переход, то вам не нужен никакой FormData. Вставьте реальную форму на страницу и искусственно вызовите у него сабмит.

1. Загуглиие как вставлять html-код на страницу при помощи JavaScript
2. Загуглите, как искусственно отправить форму со страницы при помощи JavaScript

Привел бы вам пример, но пишу со смартфона, поэтому придется вам обойтись помощью Гугла.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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