0
我写了一个简单的登录页面,向后端发送一个Ajax请求。但是,我无法在成功登录时重定向页面。重定向工作15次,不知道为什么会发生这种情况。我试过所有不同的重定向可能性,比如window.location.href,替换,重载和看到相同的行为。HTML页面重定向不能在里面工作javascript
在这里的任何帮助将是伟大的。
function loginNow(form) {
var uname, passwd;
if ((uname = document.getElementById("username").value) === "")
alert("Username cannot be empty!");
if ((passwd = CryptoJS.SHA1(document.getElementById("password").value).toString()) === "")
alert("Please provide a password!");
uname = uname.toLowerCase();
var xmlObj;
// For all known browsers
if (window.XMLHttpRequest) {
xmlObj = new XMLHttpRequest();
}
if (xmlObj.overrideMimeType) {
xmlObj.overrideMimeType('text/xml');
}
xmlObj.open("GET","../jsp/authenticate.jsp?username="+uname+"&password="+passwd+"",true);
xmlObj.send();
xmlObj.onreadystatechange = function()
{
if (xmlObj.readyState == 4)
{
var newData = xmlObj.responseText;
var authData = JSON.parse(newData);
var auth = authData.auth;
if (auth == 0) {
**window.location = "http://www.google.com";**
} else {
alert ("Login failed");
}
}
};
}
附加的console.log,看看是否有线路达到 –
添加的console.log(AUTH);在你的var auth = authData.auth之后;看看服务器发回了什么..这可能是一个服务器端错误..也为什么你有**(星号)围绕window.location? – rubberchicken
它到达线并且auth为零。服务器的响应很好。 window.location行被执行,但页面重定向不起作用。它每15次工作一次。星号用粗体突出显示 – user3616977