Sự kiện onkeydown kích hoạt khi người dùng nhấn xuống một phím (trước khi ký tự được nhập). Dùng cho: phím tắt, game, validation real-time, ngăn chặn nhập ký tự.
Ví dụ
<!DOCTYPE html>
<html>
<body>
<p>Nhấn phím trong ô nhập liệu.</p>
<input type="text" onkeydown="display()">
<script>
function display() {
alert("Bạn đã nhấn một phím!");
}
</script>
</body>
</html>
Ba sự kiện bàn phím
| Sự kiện | Kích hoạt khi | Thứ tự |
|---|---|---|
| onkeydown | Phím được nhấn xuống | 1 |
| onkeypress | Ký tự được tạo ra (deprecated, không dùng) | 2 |
| onkeyup | Phím được thả ra | 3 |
Ví dụ nâng cao: lấy mã phím
<input type="text" onkeydown="showKey(event)">
<script>
function showKey(e) {
console.log("Key:", e.key, "| Code:", e.code, "| KeyCode:", e.keyCode);
// Ngăn nhập số: if (e.key >= '0' && e.key <= '9') e.preventDefault();
}
</script>
Lưu ý
onkeypressđã deprecated, dùngonkeydownhoặconkeyup.- Dùng
event.key(giá trị ký tự) hoặcevent.code(vị trí vật lý phím).