【发布时间】:2013-02-03 16:07:18
【问题描述】:
我最近一直在做一些 JS 并遇到这个愚蠢的错误,我可以使用 e.keyCode 检测返回键并检查 keyCode == 13 但是当我尝试检查 38(向上箭头)时它永远不会触发.有什么帮助吗?
HTML:
<input type="text" id="TxtMessage"
placeholder="Message" onKeyPress="SendMsg(event)" >
Javascript:
function SendMsg(e)
{
var message = document.getElementById("TxtMessage");
if(e.keyCode ==13)
{
var json = {"message": message.value};
json = JSON.stringify(json);
ws.send(json);
PreviousMessage = message.value;
message.value = "";
message.focus();
}
else if(e.keyCode == 38)
{
message.value = PreviousMessage;
}
}
编辑:通过将 onKeyPress 更改为 onKeyDown 来修复...奇怪。
【问题讨论】:
-
你想在这里做什么?当你按下 ENTER 和 UP 时会发生什么?
-
按下 up 时,它将元素的文本设置为上一个发送的消息。但是向上箭头键按下事件没有被触发。我尝试在那里发出警报,但它仍然不起作用
标签: javascript keypress