我想为textarea
内的键盘上的每个按键检查两个条件:
1)如果是数字,则将其添加到文本区域。
2)如果还有其他问题,请向用户发送警报。
HTML中的textarea
标记为:
<textarea id="input" placeholder="EnterInput"></textarea>
我在JS文件中写的是:
document.getElementById("input").addEventListener("keypress", checkInput(e));
function checkInput(keyPressed){
if(keyPressed < 48 || keyPressed > 57){
alert("Wrong input! The charcted entered is not a number.");
}
}
[具有()
,您将立即调用侦听器功能
document.getElementById("input").addEventListener("keypress", checkInput(e))
^^ INVOKED!
[event
将自动传递给您的函数,因此只需省略:
document.getElementById("input").addEventListener("keypress", checkInput)
此外,which
的event
属性存储键码(在大多数浏览器上,如@TJCrowder所指出的,较旧的浏览器可能使用keyCode
属性:
function checkInput(event) {
var keyCode = event.hasOwnProperty('which') ? event.which : event.keyCode;
//Now check
}