2011-01-29 3 views

Trả lời

5

Javascript không cháy, các sự kiện dựa trên những thay đổi chương trình để tạo thành các yếu tố - để ngăn chặn vòng lặp vô hạn của sự kiện - vì vậy bạn có hai lựa chọn (ít hơn lý tưởng):

  • Viết một hàm wrapper mà thay đổi thuộc tính gọi callback của bạn, và sau đó ép buộc mình phải luôn luôn sử dụng chức năng bao bọc của bạn
  • Chỉ cần gọi gọi lại chính mình khi bạn thay đổi các thuộc tính
+2

Nếu * bạn * đã thay đổi hộp kiểm một cách chuyên nghiệp, thì bạn có thể tự kích hoạt sự kiện thay đổi. Ví dụ: $ ("# myCheckbox"). Prop ("checked", true) .trigger ("change"). – Steve11235

1

tôi không chắc chắn liệu yo u đang mong đợi this

+1

Không thực sự. Tôi hy vọng rằng việc thực thi mã '$ ('# check1'). Attr ('checked', 'checked');' sẽ kích hoạt 'change()' event cho hộp kiểm đó. – SaltLake

-1

This có thể là những gì bạn đang tìm kiếm.

$(document).ready(function(){   
    $('#check1').click(function(){ 
     var n = $("#check1:checked").length; 
     alert(n); 
    }); 
});