这是我的登录页面:http://www.flimpact.org/testlogin.html。如果您输入密码,然后单击"登录"按钮,该脚本将完美运行 - 弹出警报会通知您密码正确,然后您进入下一页。但是,如果您键入正确的密码并单击 Enter 而不是单击登录按钮,则会收到警报,但它不会将您转发到页面。
您可以自己测试-密码为:简单
我尝试将输入类型="按钮"更改为类型="提交"并将onSubmit="Login()"添加到我的表单中,但随后表单完全停止工作。
任何帮助将不胜感激。谢谢黛博拉
我假设您只是出于测试目的在客户端存储密码?
但是,要使代码正常工作,您有几个选择。 我更喜欢使用 logIn
函数作为布尔检查来确定它是否成功。 然后,您需要将action
移动到form
并将按钮更改为submit
按钮。 这应该适合您:
<form name="lform" id="lform" action="http://www.flimpact.org/1staff.html" onSubmit="return logIn()">
<input type="password" class="passwordinput" size="40" name="login" id="login">
<br>
<input type="submit" class="loginbutton" value="Login">
</form>
<script type="text/javascript">
//Powered by DCScript
function logIn() {
var pass = unescape("%65%61%73%79");
switch (document.lform.login.value) {
case pass:
alert("Valid password. Access granted");
return true;
break;
default:
alert("Invalid password. Please try again.");
return false;
}
}
</script>
- JS小提琴演示
也许您可以将"parent.location"更改为"window.location.href":)
尝试从 logIn() 函数返回 false 并将表单标签更改为:
<form name="lform" id="lform" onsubmit="return logIn()">