如何在jQuery中的复选框数组上设置侦听器?

时间:2019-06-14 07:32:20

标签: jquery jquery-selectors

情况:

尝试以此来“收集”所有复选框:

let docChildPermissions = $('input.docPermission').not('.parent');

那行得通。

现在,如果这些复选框中的任何一个这样更改,我只想采取措施;

$(document).on('change', $(docChildPermissions), function() {
    console.log($(this));
});

但是在控制台中,我得到了:

init [document, context: document]
0: document
context: document
length: 1
__proto__: Object(0)

这是整个“控制台已登录”的文档,我只需要选中的复选框即可。

1 个答案:

答案 0 :(得分:3)

如果选中documentation for on(),将会看到选择器参数必须是字符串,而不是示例中的jQuery对象。这就是问题的原因。

要解决此问题,请将对象转换为字符串选择器,如下所示:

$(document).on('change', 'input.docPermission:not(.parent)', function() {
  console.log($(this));
});