checkbox部分代码
我是TP5做后台  然后传值遍历的
想法是选中多个checkbox时,向后台传递一个二维数组
包涵正常的表单值和一个checkbox被选值的子数组下面是我遍历的checkbox代码,其他的表单值都正常
正常的话应该是checkbox的name属性写成xxx[]然后表单提交的时候就是个二维数组了吧?                 <div class="layui-form-item">
                      <label class="layui-form-label"><span class="x-red">*</span>选择权限</label>
                      <div class="layui-input-block">
                        {foreach $rlist as $r}
                        <input type="checkbox" name="auth[]" lay-skin="primary" value="{$r['id']}" title="{$r['ch_name']}"><div class="layui-unselect layui-form-checkbox layui-form-checked" lay-skin="primary"><span>{$r['ch_name']}</span><i class="layui-icon layui-icon-ok"></i></div>
                        {/foreach}
                      </div>
                  </div>
前端框架用的是基于layui的X-admin
表单提交部分js//监听提交
                form.on('submit(add)',function(data) {
                  console.log(JSON.stringify(data.field));
                    $.post('/authgroup', {'data':data.field}, function(data, textStatus, xhr) {
                        if (data.code == 0) {
                            // 定时器
                            setTimeout(function(){
                                window.parent.location.reload();//修改成功后刷新父界面
                            }, 1000);
                            // 弹出提示
                           layer.alert(data.msg, {icon: 6},
                            function() {
                            // 获得frame索引
                            var index = parent.layer.getFrameIndex(window.name);
                            //关闭当前frame
                            parent.layer.close(index);
                        }); 
                       }else{
                            layer.alert(data.msg, {icon: 5});
                       }
                    },'json');
                  return false;
                });            });
我想得到的值是这样的array (size=3)
  'group' => string '1' (length=1)
  'group_info' => string '1' (length=1)
  'auth' => 
    array (size=3)
      1 => string '1' (length=1)
      2 => string '2' (length=1)
      3 => string '3' (length=1)然而我一顿操作猛如虎却只搞出来这种的 有点难受
应该怎么写 求大神指导一哈

解决方案 »

  1.   

    html代码:
    {foreach $list as $key => $value}
                <input type="checkbox" name="auth[{$key}]" value="{$value.id}" title="{$value.ch_name}">
    {/foreach}
    $arr = [
                [
                    'id' => 1,
                    'ch_name' => '阅读'
                ],
                [
                    'id' => 2,
                    'ch_name' => '写作'
                ],
                [
                    'id' => 3,
                    'ch_name' => '代码'
                ],
            ];
            $list = [];
            foreach ($arr as $value) {
                $list[$value['id']] = $value;
            }
            $this->assign('list', $list);
            if (request()->isAjax()) {
                $param = input('param.');
                print_r($param);
            }
            return $this->view->fetch();
      

  2.   

    你对layui还不是很熟吧。