edit.html 6.1 KB
{extend name="public:form" /}
{block name="body"}
<div class="layui-fluid">
        <div class="layui-row">
            <form action="" method="post" class="layui-form layui-form-pane">
                <input type="hidden" name="id" value="{$data.id}">
                <div class="layui-form-item">
                    <label for="title" class="layui-form-label">
                        <span class="x-red">*</span>角色名
                    </label>
                    <div class="layui-input-inline">
                        <input type="text" id="title" name="title" required="" lay-verify="required"
                        autocomplete="off" value="{$data.title}" class="layui-input">
                    </div>
                </div>
                <div class="layui-form-item layui-form-text">
                    <label class="layui-form-label">
                        拥有权限
                    </label>
                    <table  class="layui-table layui-input-block">
                        <tbody>
                            {foreach $nodes as $node}
                            <tr>
                                <td>
                                    <input type="checkbox" name="permission[]" lay-skin="primary" lay-filter="father" value="{$node['id']}" {if in_array($node['id'],$permissions) }checked="checked"{/if} title="{$node['title']}">
                                </td>
                                <td>
                                    <table  class="layui-table layui-input-block">
                                        <tbody>
                                            {if $node['children']}
                                                {foreach $node['children'] as $child}
                                                <tr>
                                                    <td>
                                                  <input 
                                                  name="permission[{$child['id']}]" 
                                                  lay-skin="primary" type="checkbox" 
                                                  title="{$child['title']}" 
                                                  value="{$child['id']}" {if in_array($child['id'],$permissions) }checked="checked"{/if}> 
                                                    </td>
                                                    <td>
                                                        {if $child['children']}
                                                        <div class="layui-input-block">
                                                            {foreach $child['children'] as $grandson}
                                                              <input 
                                                              name="permission[{$grandson['id']}]" 
                                                              lay-skin="primary" type="checkbox" 
                                                              title="{$grandson['title']}" 
                                                              value="{$grandson['id']}" {if in_array($grandson['id'],$permissions) }checked="checked"{/if}> 
                                                            {/foreach}
                                                        </div>
                                                        {/if}
                                                    </td>
                                                </tr>
                                                {/foreach}
                                            {/if}
                                        </tbody>
                                    </table>
                                </td>
                            </tr>
                            {/foreach}
                            
                        </tbody>
                    </table>
                </div>
                <div class="layui-form-item layui-form-text">
                    <label for="remark" class="layui-form-label">
                        描述
                    </label>
                    <div class="layui-input-block">
                    </label>
                        <textarea placeholder="请输入内容" id="remark" value="{$data.remark}" name="remark" class="layui-textarea"></textarea>
                    </div>
                </div>
                <div class="layui-form-item">
                <button class="layui-btn" lay-submit="" lay-filter="add">增加</button>
              </div>
            </form>
        </div>
    </div>
{/block}

{block name="js"}
<script>
    layui.use(['form', 'layer'],
    function() {
        $ = layui.jquery;
        var form = layui.form,
            layer = layui.layer;

          //监听提交
          form.on('submit(add)',
                function(data) {
                    $.ajax({
                        url: '/role_update',
                        method: "POST",
                        data: data.field,
                        dataType: "json",
                        success: function (data) {
                            if(data.status == 1){
                                layer.alert(data.message, {
                                  icon: 6
                                });
                            } else {
                                layer.alert(data.message, {
                                  icon: 5
                                });
                            }
                           
                        },
                        error : function (XMLHttpRequest, textStatus, errorThrow ) {
                            console.log('AJAX 执行失败...');
                        }

                    });
                    return false;
                });


        form.on('checkbox(father)', function(data){

            if(data.elem.checked){
                $(data.elem).parent().siblings('td').find('input').prop("checked", true);
                form.render(); 
            }else{
               $(data.elem).parent().siblings('td').find('input').prop("checked", false);
                form.render();  
            }
        });
          
          
        });
    </script>
{/block}