0

当我检查标题复选框时,我试图检查多个子复选框。我的代码很糟糕

我的代码是:

$('input.fieldCheck'.on('change', function(event) {
var $rows = $(this).parents('tr.field').nextUntil('tr.field');
var isChecked = this.checked;
$rows.each(function() {
    $(this).find('input.subFieldCheck').each(function() {
        $(this).prop('checked', isChecked);
    });});        
}));

这有什么问题?

谢谢

4

2 回答 2

2

有三个主要问题导致此方法不起作用。

1 -$('input.fieldCheck'.on('change',缺少结束)

2 - 您试图遵循名为 的命名模式lower camel case,不幸的是,您错过了它;因为每一个都input.subFieldCheck应该是input.subfieldCheck,请注意您是如何错过field此处单词上的 LCC 模式的。

)3 - 活动结束时还有一个额外的内容on('change')。在小提琴中也删除了。

4 -这是您的工作 jsFiddle(也清除了 HTML 标记中的一些错误)

于 2013-04-14T20:48:57.447 回答
0

Try this (with a nice long jQuery chain and no assignments) :

$('input.fieldCheck').on('change', function(event) {
    $(this).closest('tr.field').nextUntil('tr.field').find('input.subfieldCheck').prop('checked', this.checked);
});

Updated fiddle

于 2013-04-14T21:04:31.983 回答