Отправить две формы последовательно с AJAX

Вопрос:

Я пытаюсь выполнить ответ из этого потока, однако я никогда не использовал AJAX.

Первая форма устанавливает переменную, требуемую во второй форме, как только это было установлено, я бы хотел, чтобы она затем перенаправлялась в соответствии со второй формой (так что я предполагаю, что предупреждение хочет выйти из AJAX?) После обновления с помощью charles babbage отвечает на первую форму Submits.

Спасибо за любую помощь, это очень ценится!

<script>
$(document).ready(function() {
$("#subbut").click(function() {
$.post($("#priceselect").attr("action"), $("#priceselect").serialize(),
function() {
$.post($("#globaliris").attr("action"), $("#globaliris").serialize(),
function() {
alert('Both forms submitted');
});
});
});
});
</script>

Я поставил это в голову с целью первой подачи

<form name="priceselect" id="priceselect" method="post">
<select name="price" id="mySelect" onchange="document.getElementById('selectedValue').innerHTML = this.value;">
<option value="100">Option 1</option>
<option value="120">Option 2</option>
<option value="115">Option 3</option>
<option value="135">Option 4</option>
<option value="80" >Option 5</option>
</select>
<input value="Continue" id="subbut" type="Submit" />
</form>

который затем должен

(isset($_POST['price']));
$price = $_POST['price'];

на той же странице, прежде чем перенаправить на третью сторону с представлением

<form id="globaliris" action="https://redirect.globaliris.com/epage.cgi" method="post" class="select">

<input type=hidden name="MERCHANT_ID" value="<?=$merchantid?>">
<input type=hidden name="ORDER_ID" value="<?=$orderid?>">
<input type=hidden name="CURRENCY" value="<?=$curr?>">
<input type=hidden name="AMOUNT" value="<?=$amount?>">
<input type=hidden name="TIMESTAMP" value="<?=$timestamp?>">
<input type=hidden name="MD5HASH" value="<?=$md5hash?>">
<input type=hidden name="AUTO_SETTLE_FLAG" value="1">
<br />
<br />
</form>

Ответ №1

Чтобы вызвать действие, указанное вами в теге Form, нажатием кнопки, кнопка должна быть типа Submit, а также должна находиться внутри вашей формы. Очень важно положение кнопки “Отправить”.

  <input type="submit" value="something" id="something">

Изменить (согласно вашему новому вопросу)

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

      $.post($("#priceselect").attr("action"),$("#priceselect").serialize()+$("#globaliris").serialize() ,
function() {
alert('Both forms submitted');
});
});

Оцените статью
TechArks.Ru
Добавить комментарий