03/08/2018, 10:06

jQuery Keyboard Events

Trong bài này mình sẽ tìm hiểu đến một số sự kiện liên quan đến bàn phím và ta gọi đó là keyboard events . Ứng với mỗi phím sẽ có ba sự kiện đó ...

Trong bài này mình sẽ tìm hiểu đến một số sự kiện liên quan đến bàn phím và ta gọi đó là keyboard events. Ứng với mỗi phím sẽ có ba sự kiện đó là .keydown(), .keypress() và .keyup(). Các sự kiện này thông thường sẽ áp dùng cho các thẻ của form như input, textarea, ... Chúng ta sẽ lần lượt tìm hiểu ba sự kiện này nhé.

.keydown()

Sự kiện xảy ra khi bạn nhấn phím xuống, áp dụng cho mọi phím có trên bàn phím (kể cả bàn phím ảo). Nhấn phím xuống ở đây có nghĩa là bạn nhấn xuống thì sẽ xảy ra sự kiện, còn khi thả phím ra thì lại là sự kiện khác.

Cú pháp
.keydown( handler )
Hoặc
.keydown( [eventData ], handler )

Trong đó:

  • handler là hàm sẽ thực hiện khi sự kiện xảy ra
  • eventData là dữ liệu được thêm vào của sự kiện
Ví dụ RUN
$('#age').keydown(function(){
    $('#result').html("Keydown: dữ liệu nhận được là " + $(this).val());
});

Vì là sự kiện nhấn phím xuống nên giá trị nó lấy được sẽ khuyết đi giá trị của phím đang gõ.

.keypress()

Tương tự như keydown nhưng bị giới hạn bởi nó không hoạt động trên tất cả các phím, mà nó chỉ có tác dụng với những phím có giá trị như a,b,c .... còn những phím như shift, ctrl thì không có.

Cú pháp
.keypress( handler )
Hoặc
.keypress( [eventData ], handler )

Trong đó:

  • handler là hàm sẽ thực hiện khi sự kiện xảy ra
  • eventData là dữ liệu được thêm vào của sự kiện
Ví dụ RUN
var time = 0;
$('#age').keypress(function(){
    time++;
    $('#result').html("Keypress: lần thứ " + time + ". Giá trị nhận được là " + $(this).val());
});

Vì là sự kiện nhấn phím xuống nên giá trị nó lấy được sẽ khuyết đi giá trị của phím đang gõ.

.keyup()

Ngược hoàn toàn với keydown và keypress, keyup là sự kiện khi bạn nhả phím thay vì là nhấn phím xuống như hai sự kiện trên.

Cú pháp
.keyup( handler )
Hoặc
.keyup( [eventData ], handler )

Trong đó:

  • handler là hàm sẽ thực hiện khi sự kiện xảy ra
  • eventData là dữ liệu được thêm vào của sự kiện
Ví dụ RUN
var time = 0;
$('#age').keyup(function(){
    time++;
    $('#result').html("Keyup lần thứ " + time + ". Giá trị nhận được là " + $(this).val());
});

Vì là sự kiện nhả phím ra nên giá trị nó lấy được sẽ chứa toàn bộ dữ liệu, kể cả phím đang nhả.

Lời kết

Qua bài này mình đã giới thiệu xong cú pháp và cách sử dụng của ba sự kiện thuộc nhóm Keyboard Event đó là keydown(), keyup()keypress(). Mỗi sự kiện sẽ có một chút khác nhau nên bạn cần phải hiểu rõ thì mới áp dụng mới chính xác.

BÀI KẾ SAU
BÀI KẾ TIẾP

Nguồn: code24h.com

Bài liên quan

Sự kiện trong jQuery - JQuery events

1. Sư kiện là gì??? Sự kiện sinh ra để phản hồi lại các tương tác của người dùng với trang web. Có lẽ chúng ta đã khá quen thuộc với các sự kiện như onclick, onmousedown, onkeydown,…… trong javascript. JQuery tất nhiên cũng cung cấp đầy đủ những sự kiện trong javascript. Không chỉ ...

Tạ Quốc Bảo viết 3 tuần trước

Jquery Events

1. Jquery Event là gì? Tất cả các hành động của người truy cập mà trang web có thể trả lời được gọi là event (sự kiện) . Ví dụ : Click vào button Di chuyển chuột Chọn một nút radio button Load một trang web ... 2. Tạo và xử lý Jquery event Trong một trang web, trình duyệt sẽ ...

Tạ Quốc Bảo viết 14:10 ngày 12/08/2018

Jquery selector & Jquery events

Trước khi đi vào bài viết thì các bạn mới nhập môn jquery nên đọc 2 bài viết sau về căn bản jquery vì bài này sẽ đi từ 2 bài trên lên cùng một số điều hay ho mà mình vọc được bài 1 : Jquery căn bản bài 2: tổng quan về jquery selector Jquery selector Giống như đã đề cập ở 2 bài viết ...

Bùi Văn Nam viết 22:45 ngày 11/08/2018

jQuery Events - Browser Events

Trong bài này mình sẽ trình bày về 2 sự kiện trong jQuery liên quan đến các hành động trên trình duyệt browser, đó là resize và scroll . ...

Tạ Quốc Bảo viết 10:13 ngày 03/08/2018

jQuery Keyboard Events

Trong bài này mình sẽ tìm hiểu đến một số sự kiện liên quan đến bàn phím và ta gọi đó là keyboard events . Ứng với mỗi phím sẽ có ba sự kiện đó ...

Hoàng Hải Đăng viết 10:06 ngày 03/08/2018
0