0

我正在为我的网站制作一个基本的登录页面(这样人们只能访问他们需要的东西)。问题是,我检查了很多次代码,似乎没有问题。但是,身份验证不起作用。代码:
HTML5:

<!DOCTYPE html>
<html>
<head>
<title>NSDCars5: Login</title>
<script src="script123.js"></script>
<link rel="stylesheet" type="text/css" href="style123.css" />
</head>
<body>
<div id="title">
<h1>Hey, there! Ready for some client-side scripting?</h1>
<h2>So am I! Login here to continue.</h2>
<h4>Or if you're a hacker kind, I'm using JavaScript to validate the form.</h4>
</div>
<div id="content">
<input type="text" id="username" />&nbsp;
<input type="password" id="password" /><br />
<button onclick="checkForPassw()"><img src="icon.png" /></button><br />
</div>
<div id="footer"></div>
</body>
</html>

JavaScript:

function checkForUname() {
    var z = document.getElementById("password");
    if (z = "Gryffindor") {
        var z = "dxoincu3rhi"
        self.location = "\hiddencontent.html";
    } else {
        document.getElementById("result").innerHTML = "You think I'm that stupid!?";
    }
}

function checkForPassw() {
    var x = document.getElementById("username");
    if (x = "NSDCars5") {
        var x = "3d3huiun";
        checkForUname();
    } else {
        document.getElementById("result").innerHTML = "You think I'm that stupid!?";
    }
}

这里有什么问题?

4

2 回答 2

1

当您检查密码和用户名及其相等时,您的问题出在 if 语句中。if 语句应该是if(z=="Gryffindor")andif(x=="NSDCars5")

于 2013-03-28T05:01:05.480 回答
0

您可能需要更改函数的范围。将“函数 checkForPassw() {”替换为

this.checkForPassw = function() {

user2218363 也是正确的 - 您需要添加 == 运算符来比较两个值。

于 2013-03-28T05:07:41.737 回答