Если я правильно понял ваш вопрос, вам нужно будет связать событие click
таким образом, чтобы оно позволяло запускать элементы, добавленные в DOM после первоначальной привязки, поскольку вы устанавливаете флажки в своемscript.
Если вы используете jQuery 1.7+, используйте on
:
$(someAncestor).on("click", ":checkbox", function() {
//Do stuff
});
someAncestor
должен быть элементом, который находится в DOMкогда выполняется приведенный выше код, который является предком флажков, которые вы хотите вызвать событие.Судя по вашему коду, это, вероятно, будет элемент table
.
Если вы используете более старую версию jQuery, обратите внимание на метод delegate
.
Причина, по которой это работает, заключается в том, что события DOM всплывают из элемента, на котором они происходят, через DOM.Если вы связываете обработчик события с предком, этот обработчик выполняется, когда событие достигает этого элемента.Методы on
и delegate
обеспечивают способ фильтрации этих событий, поэтому они запускаются только в том случае, если они возникли на определенном элементе.