使用jquery计算所选复选框。

时间:2014-01-30 06:40:57

标签: jquery

我正在尝试计算已检查的复选框的数量。但是,即使我点击,计数仍为0。这是我的代码。

<div>
<input type="checkbox" class="category1"></input>
<input type="checkbox" class="category1"></input>
<input type="checkbox" class="category1"></input>
<input type="checkbox" class="category1"></input>
</div>

我的JS代码是..

<script type="text/javascript">
        $(document).ready(function(){

            $(".category1").click(function(){

                var category1Count = $('.category1 :checked').size();
                console.log(category1Count);
            });


        });
    </script>

一定有一个简单的错误。无法找到答案。我哪里错了?提前致谢

5 个答案:

答案 0 :(得分:3)

使用length获取元素数量。您在.category1:checked

之间也不需要空格
  

自jQuery 1.8起,不推荐使用.size()方法。使用.length   财产而不是。

     

.size()方法在功能上等同于.length   属性;但是,.length属性是首选,因为它确实如此   没有函数调用的开销。 Reference

<强> Live Demo

var category1Count = $('.category1:checked').length;

答案 1 :(得分:3)

使用长度属性代替 size()方法

检查以下代码..

$('.category1:checked').length;

检查以下图片.. enter image description here

并查看JSFIDDLE

答案 2 :(得分:2)

size()和length都可以工作但是在OP代码中他只是放置一个导致无法工作的空间。

$('.category1 :checked')应为:$('.category1:checked')

demo

答案 3 :(得分:0)

尝试

var category1Count = $("input:checkbox:checked").length;

答案 4 :(得分:0)

 $(document).ready(function(){
      $(".category1").click(function(){
          console.log($(":checkbox").filter(":checked").size());              
      });
 });

Fiddle Demo