3

我有搜索堆栈,但我找不到我的问题的完整帮助。

这是我的代码http://jsfiddle.net/msx20/xprc2/1/和我想要做的......我只想计算每个手风琴 div 中选中的复选框,并显示选中项目的数量(我不想要显示 0) 在 jquery 添加的跨度中,类“accordion_counter”我添加“00”值只是为了显示这个地方。对我来说重要的是,我想为每个手风琴 div 显示选中的项目,并在左侧选项卡的跨度中显示 te count numer。

我试过这个

$('input[type="checkbox"]:checked').length 

$(document).ready(function() {
        $("input[type=checkbox]").each(function() {
            $(this).change(updateCount);
        });

        updateCount();

        function updateCount() {
            var count = $("input[type=checkbox]:checked").size();

            $(".count").text(count);
            $(".count").toggle(count > 0);
        }
});

但这会计算所有检查过的输入....也许这是个愚蠢的问题,但我没有大的 jquery 技能。有人可以帮我吗?

4

2 回答 2

1

你需要 jquery选择器

$('#group_subgrup_1 input:checked').length; 
$('#group_subgrup_2 input:checked').length; 

等等..

group_subgrup_1, group_subgrup_2 是手风琴容器。所以只考虑每个复选框的计数。

因此,在您的一般点击/更改功能中,您可以简单地调用上面的内容并获取各个计数并显示在您想要的任何位置。

所以基本上:

$(document).ready(function () {
    $("input[type=checkbox]").each(function () {
        $(this).change(updateCount);
    });

    updateCount();

    function updateCount() {

    var count1 = $('#group_subgrup_1 input:checked').length; 
    var count2 = $('#group_subgrup_2 input:checked').length;

...

    $(".count1").text(count1);
    $(".count2").text(count1);

等等..

    }
});

希望你能明白..

于 2013-11-12T12:00:21.830 回答
1

尝试删除这个:

       $("input[type=checkbox]").each(function() {
            $(this).change(updateCount);
        });

并插入:

       $("input[type=checkbox]").change(function() {
            updateCount();
        });
于 2013-11-12T11:57:09.120 回答