JavaScript登录问题

JavaScript login problems

本文关键字:问题 登录 JavaScript      更新时间:2023-09-26

我写了一个简单的HTML和JavaScript登录,但我不知道为什么它没有响应。每次我运行它时,我的浏览器都会抓狂。任何建议都将不胜感激。谢谢

<html>
<head>
<script language="JavaScript">
var names = ["MACK","KAV"];
var user = prompt("Please enter your username.").toUpperCase();
switch(user) {
case names[0]:
var password = prompt("Please enter your password.").toUpperCase();
   if(user === 'MACK' && password === 'ATTACK') {
    document.write("Hi Mack! Welcome back!");
}
else{
            for(i =0; i <0; i++) {
 document.write("Password not valid!!! ");
     };
};
    break;
    case names[1]:
var password = prompt("Please enter your password.").toUpperCase();
   if(user === 'KAV' && password === 'KAV') {
    document.write("Hello!");
}
else{
            for(i =0; i <0; i++) {
 document.write("Password not valid!!! ");
     };
};
    break;
default:
   for(i =0; i <0; i++) {
    document.write("Username not valid!!! ");
};
};
</script>
</head>
<body>
</body>
</html>

您必须将所有for语句更改为以下内容:

for(i=0; i<1; i++){
    document.write("Password not Valid!!!")
}

这将打印出"密码无效!!!"一次。现在你的for语句根本不允许打印出来,因为那永远都不可能是真的。

这是我制作的解决方案,您可以在JSFiddle上查看:http://jsfiddle.net/ux0ohvws/

var names = ["MACK","KAV"];
var user = prompt("Please enter your username.").toUpperCase();
switch(user) {
case names[0]:
    var password = prompt("Please enter your password.").toUpperCase();
    if(user === 'MACK' && password === 'ATTACK') {
        alert("Hi Mack! Welcome back!");
    }
    else{
        alert("Password not valid!!! ");
    }
    break;
case names[1]:
    var password = prompt("Please enter your password.").toUpperCase();
    if(user === 'KAV' && password === 'KAV') {
        alert("Hi Kav! Welcome back!");
    }
    else{
        alert("Password not valid!!! ");
    }
    break;
default:
    alert('Username not valid!!!')
}

for循环是不必要的。在我的例子中,我用document.write交换了alert,这样它就可以在JSFiddle上工作了。

  1. for循环中第26行代码中的语法错误

需要在条件和增量语句之间添加分号。

它是

for(i =0; i <0 i++) 

必须是

for(i =0; i < 0; i++)
  1. 将循环中的0更改为1

    对于(i=0;i<1;i++(

始终在任何浏览器中使用inspect element来指出脚本中的错误。