checkbox控制 有数量 必选,无数量可取消

60 篇文章 0 订阅
54 篇文章 1 订阅

1.判断是否选中

.is(":checked")

2.动态设置其选中

.prop("checked",true)

在这里插入图片描述
在这里插入图片描述

<div class="panel panel-default" style="margin-bottom: 10px;">
              <div class="panel-heading">尺码数量</div>
              <div class="panel-body " >
                <div class="form-group">
                  <div class="tables-container">
                    <div class="table-wrap table-main">
                      <table class="table" id="grid-table">
                        <thead>
                        <tr>
                          <th style="width:68px;padding-left:5px;text-align: left;">打板尺码&nbsp;&nbsp; <input type="checkbox" class="key-select-all"></th>
                          <!-- 尺码循环开始 -->
                          @foreach($data->style->sizegroup->get_size_details as $k=>$v)
                            <?php
                            $size_qty = '';
                            $pattern = '';
                            if($type != 1){
                              $size_id = $v['info_id'];
                              if ($notice_size){
                                $size_qty = $notice_size['size_qty'][$size_id];
                                $pattern = $notice_size['pattern'][$size_id];
                              }
                              else{
                                $size_qty = '';
                                $pattern = '';
                              }
                            }
                            ?>
                            <th class="column-size_{!! $v['info_id'] !!}" style="text-align: center;"> {!! $v['size_infos'][0]['title'] !!}
                              <input type="checkbox" class="key-select" data-key="{!! $v['info_id'] !!}" id="size_checked_{{$v['info_id']}}" name=size_checked[][{{$v['info_id']}}] {{ $pattern != '' ? 'checked' : '' }} />
                            </th>
                        @endforeach
                        <!-- 尺码循环结束 -->
                        </tr>

                        <tr style="margin-bottom: 5px;" >
                          <td style="width:68px;padding-left:5px;text-align: left;font-weight:bold;"><span>打样数量</span></td>
                          @foreach($data->style->sizegroup->get_size_details as $kq => $vq)
                            <td style="width:110px;text-align: center;" >
                              <?php
                              $size_qty = '';
                              $pattern = '';
                              if($type != 1){
                                $size_id = $vq['info_id'];
                                if ($notice_size){
                                  $size_qty = $notice_size['size_qty'][$size_id];
                                  $pattern = $notice_size['pattern'][$size_id];
                                }
                                else{
                                  $size_qty = '';
                                  $pattern = '';
                                }
                              }
                              ?>
                              <input type="text" id="size_qty_{{$vq['info_id']}}" style="text-align: center;" class="form-control none_input size_qty" name=size_qty[][{{$vq['info_id']}}] value="{{$size_qty}}" οnkeyup="positiveint(this,0,100,1)"  οnblur="checked_size(this,{{$vq['info_id']}})">
                            </td>
                          @endforeach
                        </tr>

                        </thead>
                      </table>
                    </div>
                  </div>
                </div>
              </div>
            </div>
 $(function () {
 	$('.key-select').iCheck({checkboxClass:'icheckbox_minimal-blue'}).on('ifChanged', function () {
      selectedRows();
    });

    $('.key-select-all').iCheck({checkboxClass:'icheckbox_minimal-blue'}).on('ifChanged', function(event) {
      if (this.checked) {
        $('.key-select').iCheck('check');
      } else {
        $('.key-select').iCheck('uncheck');
      }
      selectedRows();
    });

    var selectedRows = function () {
      var selected = [];
      //对所有的checkbox控件检查 :
      //$('.key-select').each(function(){
      //对选中的checkbox控件检查 :
      $('.key-select:checked').each(function(){
        var info_id = $(this).data('key')
        var size_qty = $("#size_qty_"+info_id).val();
        if (size_qty) {
          $('#size_checked_'+info_id).attr('disabled',true)
        }
        else{
          $('#size_checked_'+ info_id).attr('disabled',false)
        }
        selected.push($(this).data('key'));
      });
      console.log(selected);
    };
    selectedRows();
})
    

  function checked_size(e,id) {
    if (e.value) {
      $('#size_checked_'+id).iCheck('check');
      $('#size_checked_'+id).attr('disabled',true)
    } else {
      $('#size_checked_'+id).attr('disabled',false)
      $('#size_checked_'+id).iCheck('uncheck');
    }
  }

对所有checkbox控件检查 :

var selectedRows = function () {
      var selected = [];
      $('.key-select').each(function(){
          var info_id = $(this).data('key')
          var size_qty = $("#size_qty_"+info_id).val();
          if (size_qty) {
            $('#size_checked_'+info_id).attr('disabled',true)
            $('#size_check_'+info_id).val('');
          }
          else{
            $('#size_checked_'+ info_id).attr('disabled',false)
            $('#size_check_'+info_id).val(1);
          }

        if ($('#size_checked_'+info_id)[0]['checked'] == true ){
          selected.push($(this).data('key'));
          $('#size_check_'+info_id).val(1);
        }
        else{
          // selected.push($(this).data('key'));
          $('#size_check_'+info_id).val('');
        }

      });
       console.log(selected);

    };
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值