Имитация отправки формы с помощью вызова jquery ajax - PullRequest
4 голосов
/ 30 ноября 2011

У меня есть кусок кода, который определяет div s и некоторые обратные вызовы для них при нажатии.Чтобы избежать избыточности кода, я хочу использовать его повторно.Обратные вызовы используют $.post вызовы для связи с сервером, тогда как для этой конкретной страницы я хочу обновить страницу так, как это делает отправка формы.

Есть ли разница в использовании отправки формы на submitPage.phpи используя следующее?

$.post('submitPage',  dataParams, null, 'json').
      success(function(resp, status, req) {
        window.location = 'submitPage.php';  // redirect
      });

Мне любопытно, как это могло бы по сути повлиять на обработку записей в dataParams с помощью submitPage.php.

1 Ответ

1 голос
/ 30 ноября 2011

Разница в том, что когда вы отправляете форму в обычном режиме, запрос страницы также содержит сериализованные данные. Вы отправляете форму как запрос AJAX, а затем перенаправляете пользователя на страницу без прикрепленных сериализованных данных формы.

Так что если вам нужна переменная $_POST для доступа к submitPage.php, тогда я бы позволил форме отправлять нормально, а не подсовывать отправку с помощью запроса AJAX и затем перенаправлял пользователя.

Вы можете добавить данные $_POST в $_SESSION и затем использовать их при перенаправлении пользователя, но если у вас нет причин для этого, это кажется ненужным фрагментом кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...