我有一个测验类型的应用程序。每个问题都有两个值为1或2的答案。测验完成后,如果分数低于10,则会将他们重定向到页面。
这是我这部分的代码。
while (n < numResults) {
increment = minScore + (interval * n);
if (totalScore <= increment) {
if(totalScore <= 10) {
$.ajax({
method: "POST",
url: "handleData.php",
dataType: "json",
data: { answers: ansArray, page: window.location.href }
})
.done(function( msg ) {
window.location.href("www.page2.html");
});
}
return;
} else {
n++;
}
}
我有几件事想解决。首先,在重定向之前,一些数据(答案和URL)已发布到PHP,因此我可以对其进行处理。我通过的一件事是当前的窗口URL。我这样做的原因是因为
网址的格式如下
www.page1.com?a=1&b=2&c=3
在PHP中,我解析此URL并获取值。
我的第一个问题是,尽管数据已成功发送到PHP并进行了处理,并返回了成功的响应,但完成的函数似乎从未触发,因此不会发生重定向(我在此函数中添加了警报
以确保它不会开火)。在PHP中,处理完数据后,我执行了此操作
var_dump($response); //Outputs Success
return json_encode($response);
我要解决的第二件事是重定向URL(page2.html)。在此页面中,我有一个按钮。该按钮具有标准链接,然后我需要从初始URL中为其提供一些参数。
因此,此页面按钮可能类似于
www.externallink.com?a=1&c=2
如何将原始URL参数放入重定向的URL上的按钮中?
谢谢
最佳答案
使用以下功能代替完成:
$.ajax({
method: "POST",
url: "handleData.php",
dataType: "json",
data: { answers: ansArray, page: window.location.href }
success:function(data){
window.location.href("www.page2.html");
});
})
关于javascript - Java语言重定向成功实现Ajax,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33015941/