在ajax请求之后,Window.location不起作用

时间:2013-03-04 17:03:40

标签: javascript jquery ajax

在调用ajax请求成功响应后,Window.location不起作用,它调用了成功函数。

当我在调试器上逐步执行firefox时,window.location可以正常工作。

function login(){

var jason ={"usuario":document.getElementById("inputusuario").value,
        "password": document.getElementById("inputpassword").value
           };
            json =JSON.stringify(jason);

          console.log(json);

var onSuccess = function (data) {
    console.log('Success');
    window.location ='salas.html'

};
var onError = function (jqXHR, textStatus, errorThrown) {
    console.log(jqXHR);
    console.log(textStatus);
    console.log(errorThrown);
    alert("no se conecto");

};

var onBeforeSend = function () {
    console.log("Loading");
};

var jason ={"usuario":document.getElementById("inputusuario").value,
        "password": document.getElementById("inputpassword").value
           };

            json =JSON.stringify(jason);
$.ajax({

    url: "../reservaciones/index.php/login",
    type:"POST",
     data: json,
    cache: false,
    async: false,
    beforeSend: onBeforeSend,
    error: onError,
    success: onSuccess
 });
};

2 个答案:

答案 0 :(得分:1)

我完全复制了你的代码,添加了适当的元素,并且工作得很好。

这是您的代码,原因是: jsFiddle

试试这些:

1。尝试window.location.assign()。众所周知,这可以解决这个问题。

2。尝试运行async: true。从您的代码中我发现没有理由要运行false,有时可能导致时间问题。

答案 1 :(得分:0)

你错过了尾随';'在

window.location ='salas.html'