JS:检测来自onkeydown()内联函数

时间:2017-04-16 14:24:41

标签: javascript jquery keypress

我有以下

<input name='blah[]' onkeydown="itemKeyDown(this)">

是否可以检测itemKeyDown()函数中按下了哪个键?

我尝试了通常的方法:

e.keyCode || e.which

但它返回undefined。

注意: 我可以用jQuery方式做,但我需要在HTML代码(标签内)中专门附加函数调用,因为我动态生成了这个文本字段的大量副本,这样生成的所有字段都将继承函数调用。我不想将侦听器绑定到文本字段,而是生成所有内容。

2 个答案:

答案 0 :(得分:1)

喜欢那个?

&#13;
&#13;
function itemKeyDown(e) {
    console.log(e.keyCode || e.which);
}
&#13;
<input name='blah[]' onkeydown="itemKeyDown(event)">
&#13;
&#13;
&#13;

答案 1 :(得分:1)

<input name='blah[]' onkeydown="itemKeyDown(this)">

此关键字不包含有关它代表DOM元素(输入)的事件onkeydown的任何信息

要获取事件数据,您应该传递事件关键字,如:

<input name='blah[]' onkeydown="itemKeyDown(event)">

<script>
function itemKeyDown(e)
{
  console.log(e.keyCode)
}

</script>