在成功的Ajax调用之后,他已经看到了很多关于如何重定向到不同页面的答案,但是他们都使用了GET方法。 相反,我想使用POST方法将我的参数传递给新页面。 我该怎么办?
答案 0 :(得分:2)
我以前遇到过这个问题,并且通过定义AJAX成功回调函数和从该回调函数重定向,似乎(可能我错了)的唯一方法。如果您愿意,可以在AJAX响应中发送重定向URL本身,并在回调函数中读取重定向URL。
答案 1 :(得分:1)
您无法以编程方式将浏览器设置为执行POST请求,只能设置XMLHTTPRequest
个请求。您可以做的最好的方法是通过创建一个包含您要提交的数据的新form
元素来模拟它,然后在其上调用submit
:
var params = {name: 'lonesomeday', website: 'stackoverflow'};
var form = document.createElement('form');
form.action = 'http://example.com';
form.method = 'post';
for (var key in params) {
if (params.hasOwnProperty(key) {
var field = document.createElement('input');
field.type = 'hidden';
field.name = key;
field.value = params[key]
form.appendChild(field);
}
}
document.body.appendChild(form);
form.submit();