jQuery - 包含大量复选框的页面,如何绑定?

jyo*_*eph 2 checkbox optimization jquery

我有一个复选框页面,在某些情况下超过100.我目前正在这样做:

$('form[name=myForm] input[name=myCheckbox]').change(function(){ 

    var numChkd = $('input[name=myCheckbox]:checked').size();

    console.log(numChkd);

};
Run Code Online (Sandbox Code Playgroud)

但正如你可以想象的那样,这可能会变得很慢.有没有更好的方法将事件绑定到多个元素?这有效,但我想知道是否有更好的方法?

Ily*_*din 5

您可以将事件绑定到将包装所有复选框的父容器,然后检查导致事件的对象是否为复选框.这样,您只绑定一个事件处理程序.在jQuery中,您可以使用$ .live事件.

  • 或者[`.delegate(selector,eventName,callback)`](http://api.jquery.com/delegate) (3认同)