Javascript JS window.location无法从.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.js文件中有以下代码:

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调用这个登录方法(我称之为方法,因为它位于名为class
LoginControllerLocal{}
的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';
});