使用
<input type="text" onKeyPress="alert(this.value)">
警告框显示框中的值,不包括当前按下的键。
然而,这并没有表现出相同的行为,我不知道为什么。
<input type="text" onKeyPress="handleInput(this.value)">
function handleInput(value){
alert(value);
}
答案 0 :(得分:3)
首先要避免在html标签中使用js代码这是一个不好的做法 ,您可以使用keyup事件在用户释放任何按下的键后获取输入的内容
<input id="input">
<script>
var input = document.getElementById('input');
input.addEventListener('keyup',function(){alert(input.value);});
</script>
答案 1 :(得分:2)
它应该表现出相同的行为。 确保在头部或身体标签中加载javascript,以便从html访问该功能。
此代码适用于我:
<input type="text" onKeyPress="handleInput(this.value)">
<script>
function handleInput(value){
alert(value);
}
</script>
答案 2 :(得分:1)
传递&#39;价值&#39;作为参数通常是verbotim - 它是一个保留字。你的这个&#39;是指输入字段,因此&#39; this.value&#39;返回输入字段的全部内容。要从keypress事件中获取keyCode,请尝试:
<body>
<input type="text" onKeyPress="handleInput();">
</body>
<script>
function handleInput(){
alert(event.charCode);
}
</script>
这不适用于:
onKeyPress="event.charCode;"
或:
onKeyPress="this.event.charCode;"
因为没有创建事件对象。