我想让登录按钮在登录账户后消失,但似乎做不到。我试过使用 localStorage 和 sessionStorage,但都没用。我哪里做错了?
登录:
var objPeople = [{
username: "#",
password: "#"
},
{
username: "#",
password: "#"
},
{
username: "test",
password: "123"
}
]
function getInfo() {
var username = document.getElementById("username").value
var password = document.getElementById("password").value
for (var i = 0; i < objPeople.length; i++) {
if (username == objPeople[i].username && password == objPeople[i].password) {
console.log(username + "is logged in.")
window.location.href = "homepage.html"
localStorage.setItem("signedIn", 1);
}
}
console.log("Username/password is incorrect.")
}
主页:
const signedInTrue = localStorage.setItem("signedIn")
if (signedInTrue= 1) {
document.getElementById("topNav").style.display = "block"
}
首先,主页上有一些错误...
1.
Storage#getItem()
,不Storage#setItem()
你想获取数据,对吧?我觉得这只是一个简单的错误。
2.
Assigning to constant value
错误在这段代码中,你试图设置常量值,这也像是一个小错误
主页必须是什么样的?
然而,缺少以下信息:
如果能,怎么用?
没有这些信息,我们帮不了你。唯一的办法就是想办法实现——一旦检查用户是否已登录,就将按钮的显示设置为
none
(或将可见性设置为hidden
/collapse
)。另外,如果您询问使用哪种存储,则取决于目的:如果您只想在用户访问页面时保留登录状态,请使用
sessionStorage
。如果您想保留更长时间,请使用localStorage
。