Javascript JS window.location无法从.JS文件工作
我有以下问题。 我在login.js文件中有以下代码:Javascript JS window.location无法从.JS文件工作,javascript,redirect,window.location,Javascript,Redirect,Window.location,我有以下问题。 我在login.js文件中有以下代码: login (userField, passField) { // debugger; var json = this.loginLogic(document.getElementById(userField).value, document.getElementById(passField).value); setCookie("idSesion", json.usuario.idSesion); if (
login (userField, passField)
{
// debugger;
var json = this.loginLogic(document.getElementById(userField).value, document.getElementById(passField).value);
setCookie("idSesion", json.usuario.idSesion);
if (json.usuario.rol=="administrador") {
window.location.href = 'perfilAdministrador.html';
}
else if (json.usuario.rol=="alumno") {
window.location.href = '../html/perfilAlumno.html';
}
else if (json.usuario.rol=="profesor") {
window.location.href = '../html/perfilProfesor.html';
}
else {
console.log("Error");
}
};
我有一个html按钮,它执行一个onclick调用这个登录方法(我称之为方法,因为它位于名为classLoginControllerLocal{}
的javascript类中)
这是html代码:
<button type="submit" onclick="myfunction()">Ingresar</button>
<script>
function myfunction() {
var lc = new LoginControllerLocal;
lc.login("username", "password");
}
</script>
问题是,我不能只在页面加载时执行重定向,因为我需要首先验证登录。在问我为什么使用javascript重定向而不使用php之前,这是一项学校作业,必须完全使用javascript。
知道为什么会发生这个问题吗?请告知我能得到的所有帮助:)好吧,是记录“错误”吗?代码很奇怪,您在哪里定义了
login
函数?可能是邮件中的打字错误。。。无论如何,在单击submit按钮之后,您有一个挂起的服务器调用,这会阻止对位置
对象的更改。将事件对象传递给myfunction
,并阻止默认操作,这样就不会设置位置阻止。或者只使用一种按钮类型的按钮而不是提交类型的按钮。@Teemu该死的人!成功了!!在这个问题上花了几个小时,熬夜了一整晚,这就像改变按钮的类型一样简单。我一生中从未感到过如此愚蠢。感谢您的帮助!!!
$(document).ready(function() {
window.location = 'perfilAdministrador.html';
});