在Javascript中一次获取1个字符的事件

在Javascript中一次获取1个字符的事件,javascript,dom,javascript-events,textbox,Javascript,Dom,Javascript Events,Textbox,我对javascript非常陌生,所以如果这是显而易见的,请容忍我 基本上,我想实现一个小接口,当你在文本框中键入某个内容时,它会给出一个事件。有点喜欢这个堆栈溢出后期预览的工作方式。我尝试挂接OnChange事件,但这只会在编辑完字段后给出一个事件(文本框失去焦点)。我想要的是,每次他们对文本框中的文本做任何操作,以获取事件 哦,试试onkeydown事件 下面是一个愚蠢的例子: <html> <body> <form action="" method="POST

我对javascript非常陌生,所以如果这是显而易见的,请容忍我


基本上,我想实现一个小接口,当你在文本框中键入某个内容时,它会给出一个事件。有点喜欢这个堆栈溢出后期预览的工作方式。我尝试挂接OnChange事件,但这只会在编辑完字段后给出一个事件(文本框失去焦点)。我想要的是,每次他们对文本框中的文本做任何操作,以获取事件

哦,试试
onkeydown
事件

下面是一个愚蠢的例子:

<html>
<body>
<form action="" method="POST" id="myForm">
<input type="text" name="myText" onkeydown="doAlert(event);"/>

<script type="text/javascript" language="JavaScript">

function doAlert(e) {

  if(window.event)
  {
      alert( window.event.keyCode);
  }
  else if(e)
  {
      return alert(e.which);
  }
  else
  {
      return null;
  }

}

</script>
</form>
</body>
</html>

函数doAlert(e){
if(window.event)
{
警报(窗口、事件、键码);
}
若否(e)
{
返回警报(如which);
}
其他的
{
返回null;
}
}

onkeypress可能是您想要的。

您想要按键事件。

尝试绑定到以下事件之一:
onkeypdown
onkeypress
onkeypup
您可以尝试
onkeypup
事件:

<html>
<head>
    <title>Test</title>
</head>
<body>

<input type="text" name="test" value="" onkeyup="javascript:document.getElementById('preview').innerHTML = this.value;" />

<div id="preview"></div>

</body>
</html>

试验

不错。甚至还有浏览器兼容性图表。这是我对彻底性的投票。