我需要在该循环中捕获数字ASCII 08(Backspace):
var texto = document.getElementById('textEnv').value;
var number = 08;
for (var i = 0; i < texto.length; i++) {
if (texto.charCodeAt(i) == number) {
alert("im backspace");
}
}
因此,当在textarea上按下退格键时必须在循环中捕获。我可以保证你在var texto中接收用户在textarea中输入的所有字符。问题,我敢肯定,它的方法charCodeAt(i),我用得不好。有任何想法吗?
答案 0 :(得分:2)
文本框中没有字符ASCII 08 (Backspace)
。
您应该使用keydown事件
$( "#'textEnv'" ).keydown(function( event ) {
if ( event.which == 8 ) {
// do sth
}
});
in VanillaJS
document.getElementById('textEnv').onkeypress = function (e) {
e = e || window.event;
var charCode = e.charCode || e.keyCode,
if (charCode == 8) {
// do sth
}
};
答案 1 :(得分:0)
您应该使用keydown
事件
此处您的代码已重写
var text0 = document.getElementById('textEnv');
var number = 8;
text0.addEventListener("keydown", function() {
var key = event.keyCode || event.charCode;
if( key == number )
alert("im backspace");
});