我有一个测验类型的应用程序。每个问题都有两个值为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/

10-11 12:50
查看更多