## 增加文件
~~~
application\common\field\images2
~~~
## 修改文件1
~~~
application\common\field\Format.php  #16行
~~~
~~~
if(in_array($rs['0'], ['select','checkbox','radio','checkboxtree','checkboxsons','checkboxtext','checkmarket','xmselect'])){
~~~

## 修改文件2
~~~
application\common\field\Form.php
~~~
~~~
elseif ($field['type'] == 'checkboxsons') {    // 树状多选按钮
            $static = config('view_replace_str.__STATIC__');
            $_detail = is_array($info[$name])?$info[$name]:explode(',',$info[$name]);
            $_detail = json_encode($_detail);
            $detail = is_array($field['options']) ? getArray($field['options']) : str_array($field['options']);
            $detail=Tree::toLayer($detail);
            $detail=json_encode($detail);
            $show = "<div style='min-width:300px;'>$_show <div id='atc_{$name}{$key}' class=\"xm-select-demo\"  style='min-width:200px;max-width:40%;'></div><div>";
            $show .= fun('field@load_js','xmSelect')?"<script src='$static/oto/js/xm-select.js'></script>":'';
            $show .="<script>
                  $(function(){                        
                          xmSelect.render({
                            el: '#atc_{$name}{$key}', 
                            name:'{$name}',
                            initValue:{$_detail},
                            toolbar:{
                                show: false,
                            },
                            prop:{
                                value:'id',
                                children:'child',
                            },
                            on:function(data){
                            
                            },
                            autoRow: true,
                            height: '300px',
                            data:{$detail}
                        })
                    })
                </script>";
            $field['about'] && $field['about'] = '<br>'.$field['about'];
        }elseif ($field['type'] == 'checkboxtext') {    // 树状多选按钮
            $static = config('view_replace_str.__STATIC__');
            $_detail = json_decode($info[$name],true);
            $options = is_array($field['options']) ? getArray($field['options']) : str_array($field['options']);
            $show='';
            foreach ($options as $v){
                $show.='<div class="checkboxtext"><div class="checkbox"><input type="checkbox" title="'.$v['name'].'" lay-skin="primary" '.(empty($_detail[$v['key']])?'':' checked').' lay-filter="'.$name.'"></div>';
                if($v['type']=='html'){
                    $attr=!empty($_detail[$v['key']])?'':' readonly="readonly" disabled="disabled"';
                    $show.=str_replace(['{$name}','{$value}','{$attr}'],[$name.'['.$v['key'].']',$_detail[$v['key']],$attr],$v['html']);
                }else  if($v['type']=='text'){
                    $show.='<div><input type="text" name="'.$v['key'].'" value="">'.$v['unit'].'</div>';
                }
                $show.='</div>';
            }
            $show .="<script>               
                $(function(){                
                    layui.use(['form'], function(){
                        var form = layui.form;
                        form.on('checkbox({$name})', function(data){
                            var item=$(data.othis).parents('.checkboxtext');
                            if(data.elem.checked==true){
                                 $('input[type=\"text\"]',item).removeAttr('readonly disabled');
                            }else{
                                $('input[type=\"text\"]',item).attr({'readonly':true,'disabled':true});
                            }
                        }); 
                    });    
                })
            </script>";
            $field['about'] && $field['about'] = '<br>'.$field['about'];
        }elseif ($field['type'] == 'xmselect') {    // 树状多选按钮
            $static = config('view_replace_str.__STATIC__');
            $_detail = $info[$name]?$info[$name]:'';
            $detail = is_array($field['options']) ? json_encode($field['options']): $field['options'];
            $show = "<div style='min-width:300px;'>$_show <div id='atc_{$name}{$key}' class=\"xm-select-demo\"  style='min-width:200px;max-width:40%;'></div><div>";
            $show .= fun('field@load_js','xmSelect')?"<script src='$static/oto/js/xm-select.js'></script>":'';
            $show .="<script>
                  $(function(){
                      var render=$.extend({
                            el: '#atc_{$name}{$key}', 
                            name:'{$name}',
                            initValue:[{$_detail}],                      
                            autoRow: true,
                            height: '300px',
                        },$detail);
                        xmSelect.render(render);
                    });
                </script>";
            $field['about'] && $field['about'] = '<br>'.$field['about'];
        }elseif ($field['type'] == 'checkmarket') {    // 树状多选按钮
            $static = config('view_replace_str.__STATIC__');
            $_detail = json_decode($info[$name],true);
            $options = is_array($field['options']) ? getArray($field['options']) : str_array($field['options']);
            $options['key']=$name;
            $xmselect=[];
            $marketModule=[
                'balance'=>'<div class="item checkboxtext"><div class="checkbox"><input type="checkbox" title="余额" {$checked} lay-skin="primary" lay-filter="'.$options['key'].'"></div><div class=""><span class="name">送</span><input type="text" name="{$name}" value="{$value}" data-key="{$key}[balance]" {$readonly}><span class="unit">元</span></div>{$append}</div>',
                'integral'=>'<div class="item checkboxtext"><div class="checkbox"><input type="checkbox" title="积分" {$checked} lay-skin="primary" lay-filter="'.$options['key'].'"></div><div class=""><span class="name">送</span><input type="text" name="{$name}" value="{$value}" data-key="{$key}[integral]" {$readonly}><span class="unit">积分</span></div>{$append}</div>',
                'growth'=>'<div class="item checkboxtext"><div class="checkbox"><input type="checkbox" title="成长值" {$checked} lay-skin="primary" lay-filter="'.$options['key'].'"></div><div class=""><span class="name">送</span><input type="text" name="{$name}" value="{$value}" data-key="{$key}[growth]" {$readonly}><span class="unit">成长值适用于此会员卡</span></div>{$append}</div>',
                'coupon'=>'<div class="item checkboxtext"><div class="checkbox"><input type="checkbox" title="优惠券" {$checked} lay-skin="primary" lay-filter="'.$options['key'].'"></div><div class="">{$html}</div></div>',
            ];
            $show='<div id="checkmarket-'.$options['key'].'" class="checkmarket">';
            $si=0;
            if(!empty($options['limit']) && $options['limit']>1){
                $show.='<div class="checkmarket-content">';
                if(empty($_detail)){
                    $show.='<div class="checkmarket-item" id="checkmarket-item-0"><div class="btn-delete">删除</div>';
                    $oii=0;
                    foreach ($options['option'] as $item){
                        $name=$options['key'].'['.$si.']['.$item['key'].']';
                        $attrKey=$options['key'].'[$i]['.$item['key'].']';
                        if($item['type']=='text'){
                            $show.='<dl class="checkmarket-dl" data-key="'.$item['key'].'"><dt>'.$item['name'].'</dt><dd><input type="text" name="'.$name.'" data-key="'.$attrKey.'" value=""><span class="unit">'.$item['unit'].'</span></dd></dl>';
                        }else if($item['type']=='market' && !empty($item['option'])){
                            $module='';
                            foreach ($item['option'] as $optionkey=>$optionValue){
                                if(is_array($optionValue)){
                                    $xmselect[$optionkey][]=[
                                        'i'=>$oii,
                                        'key'=>$optionkey,
                                        'name'=>$name.'['.$optionkey.']',
                                        'data'=>json_encode($optionValue),
                                        'value'=>'',
                                    ];
                                    $html = "<textarea class='xm-select-json' style='display: none'>".json_encode($optionValue)."</textarea><div class=\"xm-select-demo xm-select-{$options['key']}-{$oii}\" data-key=\"".$attrKey.'['.$optionkey.']'."\" style='min-width:200px;max-width:40%;'></div>";
                                    $module.= str_replace(['{$html}'],[$html],$marketModule[$optionkey]);
                                    $oii++;
                                    unset($ooi);
                                }else{
                                    $module.= str_replace(['{$key}','{$name}','{$value}','{$checked}','{$readonly}','{$append}'],[$attrKey,$name.'['.$optionValue.']','','',''],$marketModule[$optionValue]);
                                }
                            }
                            $show.='<dl class="checkmarket-dl"><dt>'.$item['name'].'</dt><dd>'.$module.'</dd></dl>';
                            unset($module);
                            $si++;
                        }
                    }
                    $show.='</div>';
                }else{
                    $oii=0;
                    foreach ($_detail as $dk=>$dv){
                        $show.='<div class="checkmarket-item" id="checkmarket-item-'.$dk.'"><div class="btn-delete">删除</div>';
                        foreach ($options['option'] as $item){
                            $name=$options['key'].'['.$si.']['.$item['key'].']';
                            $attrKey=$options['key'].'[$i]['.$item['key'].']';
                            if($item['type']=='text'){
                                $show.='<dl class="checkmarket-dl" data-key="'.$item['key'].'"><dt>'.$item['name'].'</dt><dd><input type="text" name="'.$name.'" data-key="'.$attrKey.'" value="'.(empty($dv[$item['key']])?'':$dv[$item['key']]).'"><span class="unit">'.$item['unit'].'</span></dd></dl>';
                            }else if($item['type']=='market' && !empty($item['option'])){
                                $module='';
                                foreach ($item['option'] as $optionkey=>$optionValue){
                                    if(is_array($optionValue)){
                                        $value=empty($dv[$item['key']][$optionkey])?'':$dv[$item['key']][$optionkey];
                                        $xmselect[$optionkey][]=[
                                            'i'=>$oii,
                                            'key'=>$optionkey,
                                            'name'=>$name.'['.$optionkey.']',
                                            'data'=>json_encode($optionValue),
                                            'value'=>$value
                                        ];
                                        $checked=empty($value)?'':' checked';
                                        $html = "<textarea class='xm-select-json' style='display: none'>".json_encode($optionValue)."</textarea><div class=\"xm-select-demo xm-select-{$options['key']}-{$oii}\" data-key=\"".$attrKey.'['.$optionkey.']'."\" style='min-width:200px;max-width:40%;'></div>";
                                        $module.= str_replace(['{$html}','{$checked}'],[$html,$checked],$marketModule[$optionkey]);
                                        $oii++;
                                        unset($ooi);
                                    }else{
                                        $value=empty($dv[$item['key']][$optionValue])?'':$dv[$item['key']][$optionValue];
                                        $checked=$value?' checked':'';
                                        $readonly=$value?'':' readonly="readonly"';
                                        $module.= str_replace(['{$key}','{$name}','{$value}','{$checked}','{$readonly}','{$append}'],[$attrKey,$name.'['.$optionValue.']',$value,$checked,$readonly,''],$marketModule[$optionValue]);
                                    }
                                }
                                $show.='<dl class="checkmarket-dl"><dt>'.$item['name'].'</dt><dd>'.$module.'</dd></dl>';
                                unset($module);
                            }
                        }
                        $show.='</div>';
                        $si++;
                    }
                }
                $show.='</div><div class="checkmarket-title"><span class="checkmarket-add layui-btn">'.$options['title'].'</span></div>';
                $show.="\r\n";
                $xmSelectRender='';
                if(!empty($xmselect)){
                    foreach ($xmselect as $xmItme){
                        foreach ($xmItme as $xmKey=>$xmVal){
                            $xmSelectRender.="xmSelect.render({
                                el: '.xm-select-{$options['key']}-{$xmVal['i']}', 
                                name:'{$xmVal['name']}',
                                initValue:[{$xmVal['value']}],
                                toolbar:{show: false},
                                prop:{value:'id',children:'child'},
                                on:function(data){},
                                clickClose:true,
                                autoRow: true,
                                height: '300px',
                                data:{$xmVal['data']}
                            });";
                        }
                    }
                }
                $show.="<script> 
                function eachCheckmarketName{$options['key']}(){
                    $('#checkmarket-{$options['key']} .checkmarket-item').each(function (i, item) {
                        $('input[data-key]', item).each(function (j, input) {
                            $(input).attr('name', $(input).attr('data-key').replace('\$i',i));
                        });
                        $('.xm-select-demo[data-key]', item).each(function (j, xmselect) {
                            $('input.xm-select-default',xmselect).attr('name', $(xmselect).attr('data-key').replace('\$i',i));
                        });
                    });
                }
                $(function(){   
                    layui.use(['form'], function(){
                        var form = layui.form;                        
                        form.on('checkbox({$options['key']})', function(data){
                            var item=$(data.othis).parents('.checkboxtext');
                            if(data.elem.checked==true){
                                 $('input[type=\"text\"]',item).removeAttr('readonly disabled');
                            }else{
                                $('input[type=\"text\"]',item).attr({'readonly':true,'disabled':true});
                            }
                        }); 
                        {$xmSelectRender}    
                        
                        //添加
                        $('#checkmarket-{$options['key']} .checkmarket-add').click(function(){
                            var size=$('#checkmarket-{$options['key']} .checkmarket-item').size();
                            if(size>={$options['limit']}){
                                layer.msg('最多添加{$options['limit']}个');
                                return false;
                            }                            
                            var block=$('#checkmarket-{$options['key']} .checkmarket-item:first').clone().attr('id','checkmarket-item-'+size);
                            var xmselectdemo=block.find('.xm-select-demo');
                            xmselectdemo.attr('id','xm-select-item-'+size);
                            block.appendTo('#checkmarket-{$options['key']} .checkmarket-content');                       
                            xmSelect.render({
                                el: '#xm-select-item-'+size, 
                                name:xmselectdemo.attr('data-key'),
                                toolbar:{show: false},
                                prop:{value:'id',children:'child'},
                                on:function(data){},
                                clickClose:true,
                                autoRow: true,
                                height: '300px',
                                data:JSON.parse(block.find('.xm-select-json').val()),
                            });         
                            
                            eachCheckmarketName{$options['key']}();                           
                            //重载
                            form.render('checkbox');
                            //xmSelect.render();
                        });     
                        //删除
                        $('#checkmarket-{$options['key']}').on('click','.btn-delete',function(){
                            if($('#checkmarket-{$options['key']} .checkmarket-item').size()<=1){
                                 layer.msg('最少保留一个');
                            }else{
                                $(this).parent().remove();
                                eachCheckmarketName{$options['key']}();
                            }
                        });   
                    });    
                })
            </script>";
            }else{
                $module='';
                $oii=0;
                $xmselect=[];
                if(empty($_detail)){
                    foreach ($options as $optionkey=>$optionValue){
                        if(is_numeric($optionkey)){
                            if(is_array($optionValue)){
                                $name=$options['key'].'['.$optionValue['key'].']';
                                $attrKey=$options['key'].'['.$optionValue['key'].']';
                                if($optionValue['type']=='text'){
                                    $show.='<dl class="checkmarket-dl" data-key="'.$optionValue['key'].'"><dt>'.$optionValue['name'].'</dt><dd><input type="text" name="'.$name.'" data-key="'.$attrKey.'" value=""><span class="unit">'.$optionValue['unit'].'</span></dd></dl>';
                                }else if($optionValue['type']=='market' && !empty($optionValue['option'])){
                                    $module='';
                                    foreach ($optionValue['option'] as $optionkeyItem=>$optionValueItem){
                                        if(is_numeric($optionkeyItem)){
                                        }else{
                                            if(is_array($optionValueItem)){
                                                $xmselect[$optionkeyItem]=[
                                                    'i'=>$oii,
                                                    'key'=>$optionkeyItem,
                                                    'name'=>$name.'['.$optionkeyItem.']',
                                                    'data'=>json_encode($optionValueItem),
                                                    'value'=>'',
                                                ];
                                                $html = "<textarea class='xm-select-json' style='display: none'>".json_encode($optionValueItem)."</textarea><div class=\"xm-select-demo xm-select-{$options['key']}-{$oii}\" data-key=\"".$attrKey.'['.$optionkeyItem.']'."\" style='min-width:200px;max-width:40%;'></div>";
                                                $module.= str_replace(['{$html}'],[$html],$marketModule[$optionkeyItem]);
                                                $oii++;
                                                unset($ooi);
                                            }else{
                                                $optionValueItem= str_replace(['{$key}','{$name}','{$value}'],[$options['key'],$name.'['.$optionkeyItem.'][]',''],$optionValueItem);
                                                $module.= str_replace(['{$key}','{$name}','{$value}','{$append}'],[$options['key'],$name.'['.$optionkeyItem.'][]','',$optionValueItem],$marketModule[$optionkeyItem]);
                                            }
                                        }
                                    }
                                    $show.='<dl class="checkmarket-dl"><dt>'.$optionValue['name'].'</dt><dd>'.$module.'</dd></dl>';
                                    unset($module);
                                    $si++;
                                }
                            }else{
                                $module.= str_replace(['{$key}','{$name}','{$value}','{$append}'],[$options['key'],$options['key'].'['.$optionValue.']','',''],$marketModule[$optionValue]);
                            }
                        }else{
                            if(is_array($optionValue)){
                                $xmselect[$optionkey]=[
                                    'i'=>$oii,
                                    'key'=>$optionkey,
                                    'name'=>$options['key'].'['.$optionkey.']',
                                    'data'=>json_encode($optionValue),
                                    'value'=>''
                                ];
                                $html = "<div class=\"xm-select-demo xm-select-{$options['key']}-{$oii}\"  style='min-width:200px;max-width:40%;'></div>";
                                $module.= str_replace(['{$html}'],[$html],$marketModule[$optionkey]);
                                $oii++;
                                unset($ooi);
                            }else{
                                if(is_numeric($optionkey)){
                                    $module.= str_replace(['{$checked}','{$key}','{$name}','{$value}','{$append}'],[' checked',$options['key'],$options['key'].'['.$optionValue.']','',''],$marketModule[$optionValue]);
                                }else{
                                    $optionValue= str_replace(['{$checked}','{$key}','{$name}','{$value}'],[' checked',$options['key'],$options['key'].'['.$optionkey.'][]',''],$optionValue);
                                    $module.= str_replace(['{$checked}','{$key}','{$name}','{$value}','{$append}'],[' checked',$options['key'],$options['key'].'['.$optionkey.'][]','',$optionValue],$marketModule[$optionkey]);
                                }
                            }
                        }
                    }
                }else{
                    foreach ($options as $optionkey=>$optionValue){
                        if(is_numeric($optionkey)){
                            if(is_array($optionValue)){
                                $name=$options['key'].'['.$optionValue['key'].']';
                                $attrKey=$options['key'].'['.$optionValue['key'].']';
                                if($optionValue['type']=='text'){
                                    $show.='<dl class="checkmarket-dl" data-key="'.$optionValue['key'].'"><dt>'.$optionValue['name'].'</dt><dd><input type="text" name="'.$name.'" data-key="'.$attrKey.'" value="'.$_detail[$optionValue['key']].'"><span class="unit">'.$optionValue['unit'].'</span></dd></dl>';
                                }else if($optionValue['type']=='market' && !empty($optionValue['option'])){
                                    $module='';
                                    foreach ($optionValue['option'] as $optionkeyItem=>$optionValueItem){
                                        if(is_numeric($optionkeyItem)){
                                        }else{
                                            if(is_array($optionValueItem)){
                                                $xmselect[$optionkeyItem]=[
                                                    'i'=>$oii,
                                                    'key'=>$optionkeyItem,
                                                    'name'=>$name.'['.$optionkeyItem.']',
                                                    'data'=>json_encode($optionValueItem),
                                                    'value'=>$_detail[$optionValue['key']][$optionkeyItem],
                                                ];
                                                $checked=empty($_detail[$optionValue['key']][$optionkeyItem])?'':' checked';
                                                $html = "<textarea class='xm-select-json' style='display: none'>".json_encode($optionValueItem)."</textarea><div class=\"xm-select-demo xm-select-{$options['key']}-{$oii}\" data-key=\"".$attrKey.'['.$optionkeyItem.']'."\" style='min-width:200px;max-width:40%;'></div>";
                                                $module.= str_replace(['{$html}','{$checked}'],[$html,$checked],$marketModule[$optionkeyItem]);
                                                $oii++;
                                                unset($ooi);
                                            }else{
                                                if(empty($_detail[$optionValue['key']][$optionkeyItem][0]) && empty($_detail[$optionValue['key']][$optionkeyItem][1])){
                                                    $checked='';
                                                    $readonly=' readonly="readonly"';
                                                }else{
                                                    $checked=' checked';
                                                    $readonly='';
                                                }
                                                $optionValueItem= str_replace(['{$key}','{$name}','{$value}','{$checked}','{$readonly}'],[$options['key'],$name.'['.$optionkeyItem.'][]',$_detail[$optionValue['key']][$optionkeyItem][1],$checked,$readonly],$optionValueItem);
                                                $module.= str_replace(['{$key}','{$name}','{$value}','{$append}','{$checked}','{$readonly}'],[$options['key'],$name.'['.$optionkeyItem.'][]',$_detail[$optionValue['key']][$optionkeyItem][0],$optionValueItem,$checked,$readonly],$marketModule[$optionkeyItem]);
                                            }
                                        }
                                    }
                                    $show.='<dl class="checkmarket-dl"><dt>'.$optionValue['name'].'</dt><dd>'.$module.'</dd></dl>';
                                    unset($module);
                                    $si++;
                                }
                            }else{
                                if(empty($_detail[$optionValue])){
                                    $checked='';
                                    $readonly=' readonly="readonly"';
                                }else{
                                    $checked=' checked';
                                    $readonly='';
                                }
                                $module.= str_replace(['{$key}','{$name}','{$value}','{$append}','{$checked}','{$readonly}'],[$options['key'],$options['key'].'['.$optionValue.']',$_detail[$optionValue],'',$checked,$readonly],$marketModule[$optionValue]);
                            }
                        }else{
                            if(is_array($optionValue)){
                                $xmselect[$optionkey]=[
                                    'i'=>$oii,
                                    'key'=>$optionkey,
                                    'name'=>$options['key'].'['.$optionkey.']',
                                    'data'=>json_encode($optionValue),
                                    'value'=>$_detail[$optionkey]
                                ];
                                $checked=empty($_detail[$optionkey])?'':' checked';
                                $html = "<div class=\"xm-select-demo xm-select-{$options['key']}-{$oii}\"  style='min-width:200px;max-width:40%;'></div>";
                                $module.= str_replace(['{$html}','{$checked}'],[$html,$checked],$marketModule[$optionkey]);
                                $oii++;
                                unset($ooi);
                            }else{
                                if(is_numeric($optionkey)){
                                    $module.= str_replace(['{$key}','{$name}','{$value}','{$append}'],[$options['key'],$options['key'].'['.$optionValue.']','',''],$marketModule[$optionValue]);
                                }else{
                                    $optionValue= str_replace(['{$key}','{$name}','{$value}'],[$options['key'],$options['key'].'['.$optionkey.'][]',''],$optionValue);
                                    $module.= str_replace(['{$key}','{$name}','{$value}','{$append}'],[$options['key'],$options['key'].'['.$optionkey.'][]','',$optionValue],$marketModule[$optionkey]);
                                }
                            }
                        }
                    }
                    
//                    foreach ($options['option'] as $optionkey=>$optionValue){
//                        if(is_array($optionValue)){
//                            $xmselect[$optionkey]=[
//                                'i'=>$oii,
//                                'key'=>$optionkey,
//                                'name'=>$options['key'].'['.$optionkey.']',
//                                'data'=>json_encode($optionValue),
//                                'value'=>$_detail[$optionkey]
//                            ];
//                            $checked=empty($_detail[$optionkey])?'':' checked';
//                            $html = "<textarea class='xm-select-json' style='display: none'>".json_encode($optionValue)."</textarea><div class=\"xm-select-demo xm-select-demo-{$oii}\" data-key=\"".$options['key'].'['.$optionkey.']'."\" style='min-width:200px;max-width:40%;'></div>";
//                            $module.= str_replace(['{$html}','{$checked}'],[$html,$checked],$marketModule[$optionkey]);
//                            $oii++;
//                            unset($ooi);
//                        }else{
//                            $value=empty($_detail[$optionValue])?'':$_detail[$optionValue];
//                            $checked=$value?' checked':'';
//                            $readonly=$value?'':' readonly="readonly"';
//                            $module.= str_replace(['{$key}','{$name}','{$value}','{$checked}','{$readonly}'],[$optionValue,$name.'['.$optionValue.']',$value,$checked,$readonly],$marketModule[$optionValue]);
//                        }
//                    }
                }
                $show.='<dl class="checkmarket-dl"><dd>'.$module.'</dd></dl>';
                unset($module);
                $xmSelectRender='';
                if(!empty($xmselect)){
                    foreach ($xmselect as $xmVal){
                        $xmSelectRender.="xmSelect.render({
                            el: '.xm-select-{$options['key']}-{$xmVal['i']}', 
                            name:'{$xmVal['name']}',
                            initValue:[{$xmVal['value']}],
                            toolbar:{show: false},
                            prop:{value:'id',children:'child'},
                            on:function(data){},
                            clickClose:true,
                            autoRow: true,
                            height: '300px',
                            data:{$xmVal['data']}
                        });";
                    }
                }
                $show.='<div class="checkmarket-content"></div>';
                $show.="<script> 
                $(function(){                
                    layui.use(['form'], function(){
                        var form = layui.form;                        
                        form.on('checkbox({$options['key']})', function(data){
                            var item=$(data.othis).parents('.checkboxtext');
                            if(data.elem.checked==true){
                                 $('input[type=\"text\"]',item).removeAttr('readonly disabled');
                            }else{
                                $('input[type=\"text\"]',item).attr({'readonly':true,'disabled':true});
                            }
                        }); 
                        
                        {$xmSelectRender}
                    });    
                })
            </script>";
            }
            $show .= fun('field@load_js','xmSelect')?"<script src='$static/oto/js/xm-select.js'></script>":'';
            $show .="</div>
                <style>
                .checkmarket-item{
                    border: 1px solid #ddd;
                    background-color: #fff;
                    padding: 15px;
                    margin-bottom: 15px;
                    position:relative;
                }
                .checkmarket-item .btn-delete{
                    color: #06c;
                    position:absolute;
                    right: 15px;
                    top: 15px; 
                    cursor: pointer;
                }
                .checkmarket-dl{
                    display:flex;
                    justify-content: flex-start;
                    margin-top: 15px;                
                }
                .checkmarket-dl dt{
                    width: 80px;
                    text-align: right;
                    padding-right: 10px;
                    line-height: 36px;
                }
                .checkmarket-dl dd{
                    width: 100%;
                }
                .checkmarket-dl .unit{
                    padding-left: 8px;
                    color: #888;
                }
                </style>";
            $field['about'] && $field['about'] = '<br>'.$field['about'];
        }
~~~
                    
        
    