[jQuery] Bắt sự kiện khi nhấn phím Enter

Với những ai dùng máy tính thì thường có thói quen nhấn Enter để thực thi một hành động, sự kiện nào đó. Chẳng hạn có nhiều người khi tìm kiếm thông tin trên website thường sẽ gõ từ khóa cần tìm rồi nhấn Enter để kết thúc. Vậy làm thế nào biết được khi nào người dùng nhấn Enter ?

Câu trả lời là dựa vào hàm keypress() trong jQuery để bắt sự kiện khi người dùng gõ 1 phím bất kỳ. Mỗi phím trên bàn phím đều được kí hiệu riêng trong bảng mã ASCII, nếu phím được nhấn có giá trị bằng 13 thì phím đó là phím Enter (tham khảo danh sách bảng mã ASCII tại đây)

1, Bắt sự kiện khi người dùng nhấn Enter trong một thẻ input

Hành động này tương tự như hành động Search mà tôi đã đề cập ở trên. Đoạn code xử lý như sau:

$('#input').keypress(function(event){
  var keycode = (event.keyCode ? event.keyCode : event.which);
  if (keycode == '13') {
    alert('Bạn vừa nhấn phím "enter" trong thẻ input');
  }
});

2, Bắt sự kiện khi người dùng nhấn Enter trên trang web

Đoạn code dưới đây sẽ bắt sự kiện khi người dùng nhấn Enter ở vị trí bất kỳ trên trang web

$(document).keypress(function(event){
  var keycode = (event.keyCode ? event.keyCode : event.which);
  if (keycode == '13') {
    alert('Bạn vừa nhấn phím "enter" trên trang web');
  }
});

Điểm khác nhau duy nhất giữa 2 đoạn code trên là tôi đã thay $(‘#input’) bằng $(document) để bắt sự kiện trên toàn trang web.

Lưu ý:  Trong Firefox bạn phải sử dụng event.which để lấy mã bàn phím trong khi IE (Internet Explorer) lại hỗ trợ cả hai event.whichevent.keyCode.

3, Tham khảo

http://www.mkyong.com

 

Tấn Việt

Tôi lập trang web này để thỏa mãn sở thích viết cái gì đó vui vui khi rãnh rỗi và đồng thời cũng chia sẻ những gì tôi biết hoặc đọc đâu đó trên mạng về Lập trình web. Tôi hi vọng những bài viết này sẽ giúp ích cho các bạn. Thân ái!

You may also like...

1 Response

  1. Trần Thanh says:

    hay quá ^^

Leave a Reply

Your email address will not be published. Required fields are marked *