在下面的JavaScript函数中,当我使用firebug逐行调试'windows.location'时,它可以完美地工作,它将重定向到给定的链接。但是当我运行它而不使用firebug进行调试时,即使密码和用户名正确,也不会发生页面重定向。谁能解释一下为什么?
<script type="text/javascript">
$(document).ready(function () {
$('#btnSubmit').click(function () {
var uname = $('#txtUserName').val();
var Password = $('#txtPassword').val();
if (uname != null && Password != null) {
$.ajax({
type: "get",
data: { type: "login", Uname: uname, Pword: Password,ran:Math.random() },
contentType: "application/json",
url:"/CreatePdf.ashx",
success: function (result) {
if(result=='1')
{
window.location = "/home.aspx";
}
}
});
}
else {
document.getElementById('spPassword').innerHTML = "Please Enter Username/Password";
}
});
});
</script>
答案 0 :(得分:1)
永远不会调用success函数(因为ajax存在问题),或者result
参数不是字符串"1"
。我们没有水晶球来看看发生了什么,所以你必须自己调试:
$.ajax({
…,
success: function (result) {
console.log("result: ", result);
if(result=='1')
window.location = "/home.aspx";
},
error: function(jqXHR, status, error) {
console.log("Ajax failed with "+status+" due to "+error);
}
);
还可以使用开发人员工具的网络面板检查服务器是否发送了预期的响应。