我有以下jsp:
<head lang="en">
<meta charset="UTF-8">
<title>Data Platform - Real Time Monitor </title>
<script src="../dist/ag-grid-enterprise.js?ignore=notused30"></script>
<script src="../dist/loadingGrid.js"></script>
<script src="../dist/sortGrid.js"></script>
<style type="text/css">
#popupbox{
margin: 0;
margin-left: 40%;
margin-right: 40%;
margin-top: 50px;
padding-top: 10px;
width: 20%;
height: 150px;
position: absolute;
background: #FBFBF0;
border: solid #000000 2px;
z-index: 9;
font-family: arial;
visibility: hidden;
}
</style>
<script language="JavaScript" type="text/javascript">
function login(showhide){
if(showhide == "show"){
document.getElementById('popupbox').style.visibility="visible";
}else if(showhide == "hide"){
document.getElementById('popupbox').style.visibility="hidden";
}
}
</script>
<body style="height: 100%; margin: 0px;">
<div id="popupbox">
<form name="login" action="" method="post">
<center>Username:</center>
<center><input name="username" size="14" /></center>
<center>Password:</center>
<center><input name="password" type="password" size="14" /></center>
<center><input type="submit" name="submit" value="login" /></center>
</form>
<br />
<center><a href="javascript:login('hide');">close</a></center>
</div>
<p><a href="javascript:login('show');">login</a></p>
<div style="font-style:bold;font-size:30;color:black;"> Data Platform - Monitor
但是当我打开jsp时,顶部会出现一个链接“login”
,单击该链接会显示一个用于登录的弹出框,但是我仍然能够看到该页面的所有内容登录前的页面。如何在加载页面内容之前显示此弹出框?
另外,我只想设置一个用户名和密码,如果仅提供该用户名和密码,则应显示页面。如何完成这个任务?
最佳答案
您的login
和close
链接在href
属性中都有javascript,它应该在onclick
属性中相反。
<a onclick="login('show');">login</a>
通过将其放在 href
(或任何其他与事件无关的属性)中,代码就会被执行。由于您的最后一个按钮是 javascript:login('show');
,因此它将始终显示登录信息。
更好的是,您应该在脚本中完成所有工作。
document.getElementById('show-login').addEventListener('click', function(e) {
e.preventDefault(); // cancel the click, but run the following code
login('show');
});
这需要您向登录按钮添加 id
属性。
<a id="show-login">login</a>
关于javascript - javascript 中的登录弹出窗口未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40156866/