【问题标题】:Check number of checkboxes depending on input根据输入检查复选框的数量
【发布时间】:2016-10-25 18:06:33
【问题描述】:

我的页面上有以下复选框

<div class="col-sm-6">
    <label>Product Show</label>
    <input type="checkbox" name="edprodShow" value="1" >Shape<br>
    <input type="checkbox" name="edprodShow" value="2" >Color<br>
    <input type="checkbox" name="edprodShow" value="3" >Design<br>
</div>   

我会得到类似 1 或 2 或 3 的值(在外部,就像在 JSON 中,我会提取该数据)。我想设置第一个复选框,如果 1 和第 1 和第 2,如果两个复选框,如果我得到 3,则所有三个复选框。(即)只获取 1 的形状和 2 的颜色 + 形状和 3 的颜色 + 形状 + 设计

我尝试了很多来源和方法,但没有找到合适的输出我该怎么做?

编辑:

我尝试做的代码

 if(split_data[7].toString() === "1"){

                    $('#edprodShow').prop('checked', true);

                    }else if(split_data[7].toString() === "2"){


                    }else if(split_data[7].toString() === "3"){

                        $('#edprodShow').prop('checked', true);
                    }

其中 split_data[7] 给我 1,2 或 3

【问题讨论】:

  • 请显示您尝试过的代码,以便我们支持您查找问题和解决方案

标签: javascript jquery html checkbox


【解决方案1】:

亲爱的,我得到了解决方案☺

你可以通过 javascript 做到这一点:

$(document).ready(function(){

var $checkboxes = $('#devel-generate-content-form td input[type="checkbox"]');

$checkboxes.change(function(){
    var countCheckedCheckboxes = $checkboxes.filter(':checked').length;
    // $('#count-checked-checkboxes').text(countCheckedCheckboxes);

    $('#edit-count-checked-checkboxes').val(countCheckedCheckboxes);
})

这里可以看到Demo

【讨论】:

    【解决方案2】:

    试试这个。 来自服务器的示例 Json

    var json = { edprodShow: [1,2,4]};
    

    代码

    var checker = function(data){
        $("[name='edprodShow']").attr('checked', false);
        $.each(data.edprodShow, function(i, value){
            $("[name='edprodShow'][value='"+ value +"']").attr('checked', true);
        }
    
    }
    

    调用函数

    checker(json);
    

    【讨论】:

      猜你喜欢
      • 2013-03-09
      • 1970-01-01
      • 2021-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多