在AJAX表单发布之后进行重定向

时间:2018-07-06 01:14:36

标签: javascript jquery html ajax

因此,我目前正在调查一个朋友来找我的问题。我对AJAXjQuery都没有真正的了解。据我所知,在发布此表单时,它将转到索引为address/set_var.cgi的当前94,并被重定向到currentaddress/scale405.html。他希望能够将第二个输入中的地址设置为实际地址,例如www.google.com,以便在表单发布后将用户重定向到其他站点。我尝试在jQueryAJAX脚本中进行查找,但我全神贯注。

如果有人想看一下,请看www.gloryfeed.com

<form name="requestPrint" action="http:set_var.cgi" method="POST">
  <input name="value" type="hidden" size="8" value="1"> 
  <input type="hidden" name="page" value="scale405.html">
  <input type="hidden" name="index" value="94">
</form>

所以我想我的问题是,有没有一种方法可以格式化输入到该值中的URL,以便它正确地重定向而不必更改AJAXjQuery? / p>

1 个答案:

答案 0 :(得分:0)

重定向本身非常简单:

doc.location = redirect_url;

redirect_url来自AJAX数据。这取决于您是否将JSON或XML作为数据。如果已设置,则重定向。

使用XML,您可以使用jQuery检索数据。也许是这样(未经测试):

redirect = jQuery("redirect", result.jqxhr.responseXML);

您可能必须处理各种情况,主要是错误。如果刚发送的表单缺少字段,则可能要生成错误而不是重定向。但是基础非常简单,如上所示。

我写了一个server_access.js脚本,它处理重定向,错误,双向发送数据……这是Snap! Websites的插件部分。


作为一个补充说明,在HTTP标头中使用Location: redirect_url将无济于事。 Apax响应永远不会触发重定向,这是设计使然。