我有以下代码检查用户名和密码,然后如果成功则重定向到新页面。它适用于Firefox就好了,但是当我在IE 9上试用它时,它只是坐着并挂起。我需要做什么才能在IE上使用它?
username=$("#user_name").val();
password=$("#password").val();
$.ajax({
type: "POST",
url: "login.php",
data: "name="+username+"&pwd="+password,
success: function(html){
console.log(html);
if(html=='true') {
window.location.replace("newpage.php");
} else {
$("#add_err").html("Wrong username or password.");
}
},
答案 0 :(得分:11)
首先关于其他答案:location.replace与更改location.href不同,它对历史的反应不同,在很多情况下,location.replace对用户体验更好,所以不要把毛巾放在location.replace上这么快!
所以我刚刚在我的机器上测试了IE9中的location.replace并且它运行了。
然后我在我的IE9上测试了console.log并且它被阻塞(显然只有当某个开发人员面板或标签或某些东西打开时我才会阅读,但我对IE9的开发工具没有多少经验说肯定的。)
我打赌你的问题不是location.replace函数,但实际上就是它之前的console.log函数!
答案 1 :(得分:4)
我一直在寻找如何在IE上更改window.location,这对我有用:
var targetlocation = "mylocation";
setTimeout(changeURL,0)
function changeURL()
{
window.location = targetlocation;
}
答案 2 :(得分:3)
您不需要重播。
if(html=='true') {
window.location = "newpage.php";
// or
window.location.href = "newpage.php";
} else {
$("#add_err").html("Wrong username or password.");
}
答案 3 :(得分:1)
试
window.location.href = 'newpage.php'
答案 4 :(得分:1)
window.location = "newpage.php";
或
window.location.href = "newpage.php";
答案 5 :(得分:1)
if(html) {
window.location.href = "filename.php";
} else {
$("#add_err").html("Wrong username or password.");
}