0

在粘贴的代码中,三元代码检查是否存在复选框单击并相应地显示结果。缺点是如果用户取消选中其中一个框,那么它会隐藏选中的 div。如果没有勾选框,我只需要隐藏选中的 div。

是否可以调整我的代码以适应这一点,或者我是否需要使用 if 语句重写。谢谢

$(function() {
    $('input[id^=check]').on('click', function() {
        var checked = '';

        $('input:checkbox:checked').each(function (i) {
            checked += this.value + ',';     
        });

        $('.checked').show().html('Checkbox is checked: <strong>' + ($(this).is(':checked') ? checked : $(".checked").hide()) + '</strong>');
    });
});
4

1 回答 1

3

最简单的方法,在保持基本布局和逻辑的同时,我想说的是改变你的

$(this).is(':checked')

到一个

checked.length > 0

因此,如果您实际上已向检查字符串添加了值,则仅隐藏 div ..

于 2012-11-23T09:48:59.730 回答