我是js的新手,我有这个非常简单的代码。它应该是一个登录,它不起作用。我不需要任何关于使其更好的提示,我打算在这开始工作时这样做。
<!DOCTYPE html>
<head> Sign-in </head>
<body>
<script type="text/javascript">
var em = prompt("Enter E-mail Here:")
if(em = "I hid this to prevent spam"){
var pa = prompt("Enter Password Here:")
if(pa = "jct28if5"){
alert("Welcome!")
}
else{
alert("Incorrect password!")
}
}
else {
alert("Invalid e-mail!")
}
</script>
</body>
</html>
它现在正在做的是无论如何,它认为使用了正确的电子邮件和密码。有人可以帮忙吗?
答案 0 :(得分:1)
我已经修改了你的代码了。有些事情需要注意。
您不能将原始内容放在<head>
。
您的密码位于页面的原始源中,因此任何人都可以查看页面源并查看正确的密码。这是一个绝对可怕的设计。密码应该传递到服务器端,在那里检查它们的有效性。
在C之类的编程语言中,例如Javascript,==测试相等性并返回一个布尔值。 =符号为变量赋值。
<!DOCTYPE html>
<head>
<title>Sign-in
</title>
<script type="text/javascript">
var em = prompt("Enter E-mail Here:")
if(em == "I hid this to prevent spam"){
var pa = prompt("Enter Password Here:")
if(pa == "jct28if5"){
alert("Welcome!")
}
else{
alert("Incorrect password!")
}
}
else {
alert("Invalid e-mail!")
}
</script>
</head>
<body>
</body>
</html>
答案 1 :(得分:0)
已修复
var em = prompt("Enter E-mail Here:")
if(em === "I hid this to prevent spam"){
var pa = prompt("Enter Password Here:")
if(pa === "jct28if5"){
alert("Welcome!")
}
else{
alert("Incorrect password!")
}
}
else {
alert("Invalid e-mail!")
}
当您为变量赋值时,使用单个=。像var x = 1。 但是如果要检查相等性,请使用===。喜欢if(x === 1)
答案 2 :(得分:0)
只需添加一个:
==检查值 ===检查值和类型
停用js或不支持curl / wget和其他人的人不会被此停止,除非你用js加载整个网站,可能是愚蠢的原因搜索引擎可能不会索引内容
希望这有帮助。