使用jQuery执行发布请求并显示下一个页面

Using jQuery to perform a post request and display the next following page

本文关键字:显示 下一个 请求 执行 jQuery 布请求 使用      更新时间:2023-09-26

我已经为一个使用POST方法的预订引擎设置了一个预订引擎-我使用了一个XDate库(效果很好),我的问题是预订引擎应该在POST后显示预订引擎网站上的新页面。

我添加了一个jsbin链接,用于说明代码http://jsbin.com/ikowuk/1/

我正在尝试实现类似于这个网站的synxis预订引擎(尽管使用的是jQuery)http://www.stoneaston.co.uk/

function booking_engine(bookingObj)
{
  $.post('https://gc.synxis.com/rez.aspx', {
    'Chain': bookingObj.chain_id,
    'lang': '1',
    'locale': 'en-GB',
    'step': '1',
    'altdest': 'Country',
    'Hotel': bookingObj.booking_id,
    'arrive': bookingObj.start_date.uk_date,
    'depart': bookingObj.end_date.uk_date,
    'adult': bookingObj.adults,
    'child': bookingObj.child,
    'rooms': bookingObj.rooms
  }, function(data) {
    console.log(data);
  });
}

根据我的评论,只有一个选项:您可以制作一个具有hidden属性集的表单。

<form id="form1" action="https://gc.synxis.com/rez.aspx" method="POST" style="display: none;"><input id="submit" type="submit" value="Submit"></form>(或隐藏的替代方案)


然后,您可以将表单的隐藏元素设置为要发布的值,而不是执行jQuery$.post()。因此,对于您的示例,添加到表单中的隐藏元素之一可能是:

$('#form1').append('<input name="booking_id" type="text" value="'+bookingObj.booking_id+'">');

一旦你创建了所有隐藏元素并将其附加到隐藏表单中,你就可以提交该表单:

$('#submit').trigger('click');


一旦你触发了点击,你的所有数据就会被发布到你的rez.aspx页面上,你也会"接受它"。