我刚用JavaScript弹出登录:
<script type="text/javascript">
function show_Window(id){
var e = document.getElementById(id);
if(e.style.display == 'block'){
e.style.display = 'none'
}else{
e.style.display = 'block'
}
}
</script>
在此窗口中有登录表单,ID为popUpLogin
:
<div id="popUpLogin">
<div id="content">
<div id="exit">
<p><a href="javascript:void(0)" onclick="naytaIkkuna('popUpLogin');">X</a></p>
</div>
<form method="POST">
<?
if(isset($error))
{
?>
<label class="loginLabel"><b>KÄYTTÄJÄNIMI: </b></label><input type="text" class="input" name="usernameInput" placeholder="" required></input>
<br><br>
<label class="loginLabel"><b>SALASANA: </b></label><input type="password" class="input" name="passInput" placeholder="" required></input>
<br><br>
<button type="submit" name="loginButton" class="loginButton">KIRJAUDU</button>
</form>
<br><br><br><br>
<a href="register.php" class="registerLink">REKISTERÖIDY</a>
</div>
它工作正常,如果登录详细信息没问题,但如果密码或用户名错误,页面重新加载,此弹出窗口关闭,此弹出登录中没有错误消息。如何在此按钮刷新页面后保持此窗口打开?
答案 0 :(得分:1)
考虑到您使用原始html表单进行登录,正确的模式是让您的后端设置错误状态。因此,在页面重新加载后,登录表单将重新打开并可能向用户显示一条有用的消息,例如&#34;您的电子邮件/密码组合未找到等等#34;。我不能告诉你如何在不知道你的后端的情况下编写代码,但可能后端会在本页的范围内设置一个JS变量。
或者,您可以将登录信息转换为JS表单,而不是重新加载页面,这可能会改善您的ux(google XMLHttpRequest
或sending forms through javascript
如果您还不熟悉图案)