这是代码,我无法弄清楚为什么输入/返回不起作用!是因为它是inline
吗?
HTML
<div class="wrap"><form name="login" style="margin: 0px">
<label for="fname">CLICK TO ENTER PASSWORD</label>
<input TYPE="text" NAME="pass" size="17" onKeyDown="e.keyCode == 13;" id="fname" class="cool"><br><input type="button" value="LOGIN" class="asbestos-flat-button" onClick="TheLogin(this.form)">
</form>
</div>
JS
<script language="JavaScript" type="text/javascript">
<!--- PASSWORD PROTECTION SCRIPT
function TheLogin() {
var password = 'password';
if (this.document.login.pass.value == password) {
top.location.href="home.html";
}
else {
location.href="index.html";
}
}
// End hiding --->
</script>
更新
感谢您的帮助。集成时仍然无法正常工作。当我按下Enter / return时,页面不会加载home.html
。相反,我没有刷新,地址栏中有url
http://example.com/?pass=password。
如果我点击该按钮,则会加载 home.html !
谢谢!
答案 0 :(得分:0)
您错过了<input type="submit">
,没有它,您无法使用Enter键提交表单。
答案 1 :(得分:0)
Here I wrote a JSFiddle以及工作示例。
在HTML代码中:
onKeyDown="e.keyCode == 13;"
文本元素中删除<input>
。onClick="TheLogin(this.form)"
按钮元素中删除<input>
。onSubmit="theLogin(this.form)"
元素上添加<form>
。注意:我已经从&#34; TheLogin&#34;重新命名了函数名称。到&#34; theLogin&#34;因为在JavaScript中,函数以小写字母开头,如果它们不是构造函数的话。
HTML代码:
<div class="wrap">
<form name="login" style="margin: 0px" onSubmit="theLogin(this.form)">
<label for="fname">CLICK TO ENTER PASSWORD</label>
<INPUT TYPE="text" NAME="pass" size="17" id="fname" class="cool">
<br>
<input type="submit" value="LOGIN" class="asbestos-flat-button">
</form>
</div>
JavaScript代码:
theLogin = function() {
var password = 'password';
if (this.document.login.pass.value === password) {
top.location.href = "home.html";
} else {
location.href = "index.html";
}
}