情况:
尝试以此来“收集”所有复选框:
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)
这是整个“控制台已登录”的文档,我只需要选中的复选框即可。
答案 0 :(得分:3)
如果选中documentation for on()
,将会看到选择器参数必须是字符串,而不是示例中的jQuery对象。这就是问题的原因。
要解决此问题,请将对象转换为字符串选择器,如下所示:
$(document).on('change', 'input.docPermission:not(.parent)', function() {
console.log($(this));
});