Keyboard 当用户使用event.keyCode==13释放键盘上的键时,在执行函数时获取错误消息

Keyboard 当用户使用event.keyCode==13释放键盘上的键时,在执行函数时获取错误消息,keyboard,passwords,enter,keycode,Keyboard,Passwords,Enter,Keycode,我正在尝试创建一个函数,允许用户在键盘上按enter键来验证密码字段。在键盘上按enter键后,当密码错误时,我会不断收到page not found消息。如果我单击密码框上的“输入”按钮,我的警报将弹出,但不会按预期发生任何事情。我基本上希望通过单击键盘上的enter按钮获得相同的精确结果。我怎样才能让它正常工作 下面是我目前正在尝试使用的钢笔的链接 //创建验证密码的函数 函数computerPassword(){ var val=document.getElementById('pas

我正在尝试创建一个函数,允许用户在键盘上按enter键来验证密码字段。在键盘上按enter键后,当密码错误时,我会不断收到page not found消息。如果我单击密码框上的“输入”按钮,我的警报将弹出,但不会按预期发生任何事情。我基本上希望通过单击键盘上的enter按钮获得相同的精确结果。我怎样才能让它正常工作

下面是我目前正在尝试使用的钢笔的链接

//创建验证密码的函数
函数computerPassword(){
var val=document.getElementById('password')。值;
如果(val==“小丑”){
窗口打开(“https://www.google.com");
//location.href=”https://www.google.com";
}否则{
//不断出现错误,所以我添加了这个
//当用户在按enter键后输入错误时在同一窗口中打开
//窗口打开(“https://www.bing.com“,”家长“);
警报(“密码错误”);
}
}
var input=document.getElementById(“密码”);
//当用户释放键盘上的键时执行功能;来自W3Schools.com
input.addEventListener(“键控”,函数(事件){
//数字13是键盘上的“回车”键
如果(event.keyCode===13){
//如果需要,取消默认操作
event.preventDefault();
//通过单击触发按钮元素
document.getElementById(“go”)。单击();
}
});
@import“compass/css3”;
*{框大小:边框框;}
身体{
字体系列:“HelveticaNeue灯”,“Helvetica Neue灯”,“Helvetica Neue”,Helvetica,Arial,“Lucida Grande”,无衬线;
颜色:白色;
字体大小:12px;
背景:#333URL(/images/classy_fabric.png);
}
形式{
背景:#111;
宽度:300px;
保证金:30像素自动;
边界半径:0.4em;
边框:1px实心#191919;
溢出:隐藏;
位置:相对位置;
盒影:0 5px 10px 5px rgba(0,0,0,0.2);
}
形式:后{
内容:“;
显示:块;
位置:绝对位置;
高度:1px;
宽度:100px;
左:20%;
背景:线性梯度(左,#111,#444,#b6b6b8,#444,#111);
排名:0;
}
形式:以前{
内容:“;
显示:块;
位置:绝对位置;
宽度:8px;
高度:5px;
边界半径:50%;
左:34%;
顶部:-7px;
盒影:0 0 6px 4px#fff;
}
.插图{
填充:20px;
边框顶部:1px实心#19191a;
}
表格h1{
字号:18px;
文本阴影:0 1px 0黑色;
文本对齐:居中;
填充:15px0;
边框底部:1px实心rgba(0,0,0,1);
位置:相对位置;
}
表格h1:之后{
内容:“;
显示:块;
宽度:250px;
高度:100px;
位置:绝对位置;
排名:0;
左:50px;
指针事件:无;
变换:旋转(70度);
背景:线性梯度(50度,rgba(255255255,0.15),rgba(0,0,0));
}
标签{
颜色:#666;
显示:块;
填充底部:9px;
}
输入[类型=文本],
输入[类型=密码]{
宽度:100%;
填充:8px 5px;
背景:线性梯度(#1f2124,#27292c);
边框:1px实心#222;
框阴影:
0 1px 0 rgba(255255,0.1);
边界半径:0.3em;
边缘底部:20px;
}
标签[用于=记住]{
颜色:白色;
显示:内联块;
填充底部:0;
垫面:5px;
}
输入[类型=复选框]{
显示:内联块;
垂直对齐:顶部;
}
.p-货柜{
填充:0 20px 20px 20px;
}
.p-集装箱:之后{
明确:两者皆有;
显示:表格;
内容:“;
}
.p-集装箱跨度{
显示:块;
浮动:左;
颜色:#0d93ff;
填充顶部:8px;
}
输入[类型=提交]{
填充:5px20px;
边框:1px实心rgba(0,0,0,0.4);
文本阴影:0-1px0RGBA(0,0,0,0.4);
框阴影:
插图0 1px 0 rgba(255255,0.3),
插图0 10px 10px rgba(255255255,0.1);
边界半径:0.3em;
背景#0184ff;
颜色:白色;
浮动:对;
字体大小:粗体;
光标:指针;
字体大小:13px;
}
输入[类型=提交]:悬停{
框阴影:
插图0 1px 0 rgba(255255,0.3),
插图0-10px 10px rgba(255255,0.1);
}
输入[类型=文本]:悬停,
输入[类型=密码]:悬停,
标签:悬停~input[type=text],
标签:悬停~输入[类型=密码]{
背景:#27292c;
}

输入您的密码

密码


您有一个语法错误/a缺少
{
。试一试:

//creates a funtion that validates password
function computerPassword() {
var val = document.getElementById('password').value;
if (val =="Joker"){
  window.open("https://www.google.com");
  //location.href="https://www.google.com";
}else{
  //keep getting errors so I added this 
  //to open in same window when user inputs wrong after hitting enter
  //window.open("https://www.bing.com", "_parent");
 window.open("https://bing.com"); 
 } 
}

好的,我想我已经解决了问题。Lonny B提到我无意将表单发布到服务器上。但是,这让我想到表单元素本质上可能在找这个服务器,而我没有明确告诉它。我不完全确定是否是这样,但我在html中将表单元素更改为Div现在它可以正常工作。

这是一个愚蠢的错误。感谢修复。它现在正在打开新窗口。但是,我仍然在原始页面“未找到页面”上收到错误消息。我不希望每次有人用键盘输入错误的密码时都要重定向到新的url。我自学成才,边走边学。有更好的方法吗?我希望当用enter键输入错误的密码时,页面不做任何操作。没问题,会发生这种情况。我不确定你想做什么如果密码错误,但如果要显示“错误密码…”的消息,则要执行此操作然后,您可以通过创建一个包含display:none的css类来隐藏/显示一个div。如果密码错误,请删除隐藏该div并显示错误的类。否则,请使用正确的密码执行操作。在现实世界中,您可以向服务器发布一个包含凭据的表单,以便API可以验证em对抗数据库。我试试。我避开API。我是一名学校老师,我试图为我在课堂上的活动创建虚拟锁。出于某种原因,学校发行的计算机无法获取数据库,但我家的计算机会