【问题标题】:How do I see how many check boxes I have checked in Java script? [duplicate]如何查看我在 Javascript 中检查了多少个复选框? [复制]
【发布时间】:2014-03-25 16:53:08
【问题描述】:

我试过这段代码,但它不起作用

<script language='javascript' type='text/javascript'>
function chck(){
    var counter=0;
    var y=document.getElementsByName(cmmn);
    var chckdBoxes=[];
        for(var x=0; x<checkboxes.length; x++){
        if(y[x].checked){
            counter++;
        }
    }
    alert(counter);
}
</script>

【问题讨论】:

  • 代码不完整
  • 同时显示html 代码,其中有复选框和任何其他相关信息。
  • cmmn 是什么? checkboxes 是什么?这些都不是由代码声明或设置的。
  • 已经在stackoverflow中回答了很多次,这是来自答案jsfiddle.net/ZjK3w/129的第一个链接

标签: javascript checkbox


【解决方案1】:

请尝试以下代码 sn-p。

var counter = 0;
var aa = document.getElementsByTagName("input");
for (var i = 0; i < aa.length; i++) {
    if (aa[i].type == 'checkbox') 
        if (aa[i].checked) { // if (aa[i].checked == true) {
            counter++;
        }
}

【讨论】:

  • if(aa[i].checked == true) 只是写if(aa[i].checked) 的冗长方式。无论如何,对于有用的答案,请说出您更改了什么,以及为什么
【解决方案2】:

你可以像下面这样,过滤 NodeList 然后得到长度。

var checkboxes = document.getElementsByName('foo[]');
var checked_count = [].filter.call(checkboxes, function(e) {return e.checked;}).length;

THE JSFIDDLE DEMO.

或者如果你使用 jQuery,那么它可能是:

var checked_count = $("[name='foo[]']:checked").length;

【讨论】:

    【解决方案3】:
    var i=0;
    $('input').each(function(){
    
        var ty = ""+$(this).attr('type');
        if(ty == "checkbox")
        {
            i++;        
        }    
    });
    alert(i);
    

    【讨论】:

      【解决方案4】:

      使用 jQuery 可以添加伪选择器:

      $(':checked')
      

      【讨论】:

        猜你喜欢
        • 2017-06-13
        • 2023-03-09
        • 2019-02-10
        • 2013-09-05
        • 2011-01-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多