2010-04-04 31 views
5

Có thể thực hiện được sự kiện trong jquery để liên kết sự kiện với nhóm kiểm soát có lớp nhất định không? Có vẻ như với tôi, nó không thể. Tôi google một chút và tất cả những gì đã đưa ra là không có gì để làm với các sự kiện. Dưới đây là cách mã của tôi hiển thị -Sự kiện liên kết Jquery trên lớp được chọn

$('.numonly').bind('keypress',function(event){ 
    if (event.which > 31 && (event.which < 48 || event.which > 57)) return false; 
}); 

Trả lời

11

Mã của bạn nên làm việc, đây là một ví dụ về nó trong hành động: http://jsfiddle.net/g3GsE/

Hãy chắc chắn rằng mã của bạn được gói như thế này vì vậy nó không thực hiện cho đến khi document.ready:

$(function() { 
    $('.numonly').bind('keypress',function(event){ 
    if (event.which > 31 && (event.which < 48 || event.which > 57)) return false; 
    }); 
}); 

Nếu không có này, nó sẽ thực hiện ngay lập tức và các phần tử class="numonly" sẽ không có ở đó để tìm kiếm ... mã cần phải đợi cho đến khi document.ready để nó kích hoạt sau khi các phần tử ở đó, do đó bộ chọn tìm thấy chúng.

+0

+1 để chỉ ra sự cần thiết phải chỉ ràng buộc các sự kiện sau khi DOM đã tải – Dancrumb

+0

Cảm ơn các bạn đã trả lời nhanh. – Andrew

1

Có mã này chỉ hoạt động tốt. Chỉ cần chắc chắn rằng bạn kiểm tra lại nó trên máy chủ khi được gửi. Vì vậy, những người tàn tật JS không thể vượt qua giới hạn của bạn.

Các vấn đề liên quan