@alekskondr
php, javascript, yii2, drupal, MQL

Как сделать срабатывние формы с ajax?

Как сделать чтоб при нажатии сабмит, через аякс отправлялись данные на сервер и происходил переход с данными в форме на другой сайт. Сейчас только работает отправка на сервер.
Есть форма

<form id="addpro" method="GET" action="https://site.com">
      <input type="hidden" name="id" value="234">
      <input type="submit" value="Button">
      </form>


Скрипт на отправление данных на сервер

$("form#addpro").submit(function(){

    var formData = new FormData(this);

    $.ajax({
        url: 'procces.php',
        type: 'POST',
        data: formData,
        async: false,
        success: function (data) {
            alert(data)

        },
        cache: false,
        contentType: false,
        processData: false
    });

    return false;
});
  • Вопрос задан
  • 132 просмотра
Решения вопроса 1
Exploding
@Exploding
wtf?
Святые алгоритмы! Похоже я разгадал эту загадку столетия!))
method="POST"
<form id="addpro" method="POST" action="procces.php">
      <input type="hidden" name="id" value="234">
      <input type="hidden" name="redirect" value="https://site.com">
      <input type="submit" value="Button">
      <input type="hidden" name="id" value="234">
</form>


procces.php:
//что-то делаем....
    header("location: ".$_POST['redirect']);

$("form#addpro").submit(function(){

    var formData = new FormData(this);

    $.ajax({
        url: 'procces.php',
        type: 'POST',
        data: formData,
        async: false,
        success: function (data) {
            alert(data)

        },
        cache: false,
        contentType: false,
        processData: false
    });

    return false;
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@iitovka
До отправки данных аяксом сделать переменную-указательна форму,
типа $this=$(this);
И тогда в success уже можем обращаться к этой форме
$this.submit()
Ответ написан
daemonhk
@daemonhk
ПсиХоПат
Если вы пытаетесь отправить данные через POST на сторонний сайт, то у вас так не получится.

1. Используйте текущий AJAX для сбора и обработки данных.
2. Используйте CURL чтобы отправить POST данные на другой сайт.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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