wg-basic-doc/docs/code-template/layui-input-tree.md

174 lines
4.2 KiB
Markdown
Raw Normal View History

2022-08-15 15:17:10 +08:00
# 输入框树形选择
layui需要引入 **ztree** 模块
js
```html
<script src="assets/js/common/layui-input-tree.js"></script>
```
初始化
```js
var layuiInputTree = new LayuiInputTree(layui);
```
···
## 渲染
### 单选
html
```html
<div class="layui-input-block">
<input type="hidden" id="roleId">
<input type="text" id="roleName" class="layui-input" placeholder="勾选角色">
</div>
```
js
```js
layuiInputTree.initSelect({
id: 'roleName',
url: 'api/role/listztree',
key: {
id: 'roleId',
name: 'roleName',
title: 'roleName',
pId: 'roleParentId',
checked: 'checked',
children: 'subs',
isParent: 'isParent',
isHidden: 'isHidden',
url: 'url',
},
defaultParams: {id: '123123'},
selectedData: {id: '', name: ''}
onConfirm: function(zTree, selectedNode) {
if(!selectedNode) {
$('#roleId').val('');
return;
}
$('#roleId').val(selectedNode.id);
},
onClear: function(zTree) {}
})
```
参数
|名称|类型|描述|是否必填|
|-|-|-|-|
|url|string|请求地址|是|
|id|string|触发选择的input输入框ID|是|
|key|obj|返回列表对象与ztree节点匹配的字段。id:节点idname:名称title:标题pId:上级IDchecked:是否选中isParent:是否父节点isHidden是否隐藏url:节点链接。以上属性均为非必填|否|
|defaultParams|obj|请求默认携带的参数|否|
|getSelectedData|function|返回已经选择的数据|否|
|onConfirm|function|点击确定按钮后触发|否|
|onClear|function|点击清除按钮后触发|否|
方法
getSelectedData返回ztree回显时的数据
事件
onConfirm树形列表点击确定按钮后触发
|名称|类型|描述|
|-|-|-|
|zTree|obj|ztree对象|
|selectedNode|obj|选择的节点|
onClear树形列表点击清空按钮后触发
|名称|类型|描述|
|-|-|-|
|zTree|obj|ztree对象|
### 多选
html
```html
<div class="layui-input-block">
<input type="hidden" id="roleIds">
<input type="text" id="roleNames" class="layui-input" placeholder="勾选角色">
</div>
```
js
```js
var selectedRoles = [{id:'', name:''}]
layuiInputTree.initMultiSelect({
id: 'roleNames',
url: 'api/role/listztree',
key: {
id: 'roleId',
name: 'roleName',
title: 'roleName',
pId: 'roleParentId',
checked: 'checked',
children: 'subs',
isParent: 'isParent',
isHidden: 'isHidden',
url: 'url',
},
checkboxType: {Y: '', N: ''},
defaultParams: {id: '123123'},
getSelectedDatas: function() {
return [{id:'', name:''}]
},
onConfirm: function (zTree, selectedNodes) {
// 将返回结果保存,回显时用
if (selectedNodes.length == 0) {
$('#roleIds').val('');
return;
}
var roleIds = '';
$.each(selectedNodes, function (index, item) {
if (roleIds != '') {
roleIds += ',';
}
roleIds += item.id;
})
$('#roleIds').val(roleIds);
}
})
```
参数
|名称|类型|描述|是否必填|
|-|-|-|-|
|url|string|请求地址|是|
|id|string|触发选择的input输入框ID|是|
|key|obj|返回列表对象与ztree节点匹配的字段。id:节点idname:名称title:标题pId:上级IDchecked:是否选中isParent:是否父节点isHidden是否隐藏url:节点链接。以上属性均为非必填|否|
|checkboxType|obj|复选框类型Y 属性定义 checkbox 被勾选后的情况N 属性定义 checkbox 取消勾选后的情况;"p" 表示作会影响父级节点;"s" 表示操作会影响子级节点。默认均为"ps"|否|
|defaultParams|obj|请求默认携带的参数|否|
|getSelectedDatas|function|返回已经选择的数据列表|否|
|onConfirm|function|点击确定按钮后触发|否|
|onClear|function|点击清除按钮后触发|否|
方法
getSelectedDatas返回ztree回显时的数据列表
事件
onConfirm树形列表点击确定按钮后触发
|名称|类型|描述|
|-|-|-|
|zTree|obj|ztree对象|
|selectedNodes|array|触发选择的节点列表|
onClear树形列表点击清空按钮后触发
|名称|类型|描述|
|-|-|-|
|zTree|obj|ztree对象|