如何从 javascript 中的文本输入按键调用函数?

How to call function from text input key press in javascript?

<input type="text" onKeyPress="alert(this.value)">

警告框显示框中的值,不包括当前按下的键。

但是,这并没有表现出相同的行为,我不知道为什么。

<input type="text" onKeyPress="handleInput(this.value)">

function handleInput(value){
    alert(value);
}

添加了这个 http://jsfiddle.net/abalter/adbbb599/6/

它应该表现出相同的行为。 确保在 head 或 body 标签中加载 javascript,这样您就可以从 html.

访问该函数

这段代码对我有用:

<input type="text" onKeyPress="handleInput(this.value)">
    <script>
        function handleInput(value){
            alert(value);
        }
    </script>

首先要避免在 html 标签内使用 js 代码,这是一种不好的做法 , 您可以使用 keyup 事件在用户释放任何按下的键后获取输入的内容

<input id="input">

<script>
  var input = document.getElementById('input');
  input.addEventListener('keyup',function(){alert(input.value);});

</script>

将 'value' 作为参数传递通常是逐字的——它是一个保留字。您的 'this' 指的是输入字段,因此 'this.value' returns 输入字段的全部内容。要从按键事件中获取 keyCode,请尝试:

<body>
<input type="text" onKeyPress="handleInput();">
</body>
<script>
function handleInput(){
    alert(event.charCode);
}
</script>

这不适用于:

onKeyPress="event.charCode;"

或:

onKeyPress="this.event.charCode;"

因为没有创建事件对象。