テキストボックスの onkeydown
イベントによってトリガーされる関数があります。ユーザーがバックスペースキーまたはdelキーを押したかどうかを確認するにはどうすればよいですか?
これを試して:
document.addEventListener("keydown", KeyCheck); //or however you are calling your method
function KeyCheck(event)
{
var KeyID = event.keyCode;
switch(KeyID)
{
case 8:
alert("backspace");
break;
case 46:
alert("delete");
break;
default:
break;
}
}
より新しく、よりクリーンに:event.key
を使用します。これ以上の任意の番号コードはありません!
input.addEventListener('keydown', function(event) {
const key = event.key; // const {key} = event; ES6+
if (key === "Backspace" || key === "Delete") {
return false;
}
});
firefoxの外で動作するかどうかわかりません:
callback (event){
if (event.keyCode === event.DOM_VK_BACK_SPACE || event.keyCode === event.DOM_VK_DELETE)
// do something
}
}
そうでない場合は、event.DOM_VK_BACK_SPACE
を8
に、event.DOM_VK_DELETE
を46
に置き換えるか、定数として定義します(読みやすくするため)