javascript验证和单击或输入验证

javascript验证和单击或输入验证,javascript,authentication,keyboard,Javascript,Authentication,Keyboard,我有一个登录脚本日期,单击提交按钮进行验证 //单击登录按钮后执行下面的函数。 函数验证(){ var password=document.getElementById(“passid”).value; 如果(密码==“thisisthepassword”){ window.location=“loggedin.html”;//重定向到其他页面。 返回false; } } 我想,您可以将按钮类型更改为submit,然后使用 表单元素上的onsubmit=“validate()”事件,而不是您

我有一个登录脚本日期,单击提交按钮进行验证

//单击登录按钮后执行下面的函数。
函数验证(){
var password=document.getElementById(“passid”).value;
如果(密码==“thisisthepassword”){
window.location=“loggedin.html”;//重定向到其他页面。
返回false;
}
}


我想,您可以将按钮类型更改为submit,然后使用
表单元素上的onsubmit=“validate()”事件,而不是您在按钮上使用的onclick事件参见下面的代码段,我添加了一个事件侦听器,当按下enter键时将触发按钮单击。这仍将运行与单击按钮时相同的验证

函数验证(){
var password=document.getElementById(“passid”).value;
如果(密码==“thisisthepassword”){
window.location=“loggedin.html”;//重定向到其他页面。
返回false;
}
}
//按下“回车”时,此代码将触发按钮点击。
var input=document.getElementById(“passid”);
input.addEventListener(“键控”,函数(事件){
//键代码13是键盘上的“回车”键
如果(event.keyCode===13){
//防止默认操作
event.preventDefault();
//通过单击触发按钮元素
document.getElementById(“提交”)。单击();
}
});


是否每次用户按下键盘上的键时都要运行
validate
功能?首先要做的是从按钮中删除
onClick
,并将验证检查移动到
表单中的
onSubmit
属性。这将允许enter按预期工作。查看W3中的示例:我将validate移动到表单:中,并将其从按钮中删除,使其type=submit。现在脚本只在我按enter键时运行,并且只在密码错误的情况下运行,如果正确,则不会发生任何事情我现在使用了此代码,但不会运行任何操作。脚本在外部文件中是否重要?在标题中调用?如果从外部文件调用脚本,请确保在关闭
标记之前调用脚本。这将确保在运行脚本之前加载所有DOM元素。