You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
layui/docs/tree/detail/options.md

246 lines
4.1 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<table class="layui-table">
<colgroup>
<col width="150">
<col>
<col width="100">
<col width="100">
</colgroup>
<thead>
<tr>
<th>属性名</th>
<th>描述</th>
<th>类型</th>
<th>默认值</th>
</tr>
</thead>
<tbody>
<tr>
<td>elem</td>
<td>
绑定元素选择器
</td>
<td>string/DOM</td>
<td>-</td>
</tr>
<tr>
<td>data</td>
<td>
`tree` 的数据源。其格式详见:[#data 格式](#options.data)
</td>
<td>array</td>
<td>-</td>
</tr>
<tr>
<td>id</td>
<td>
设置实例唯一索引,用于其他方法传参使用。
</td>
<td>string</td>
<td>-</td>
</tr>
<tr>
<td>showCheckbox</td>
<td>
是否显示复选框
</td>
<td>boolean</td>
<td>
`false`
</td>
</tr>
<tr>
<td>edit</td>
<td>
是否开启节点的右侧操作图标。支持以下可选值:
- 若为 `true`,则默认显示「改删」图标
- 若为 数组,则可自由配置操作图标,如:`edit:['add', 'update', 'del']` ,且图标将按照数组的顺序显示。
</td>
<td>boolean<br>array</td>
<td>
`false`
</td>
</tr>
<tr>
<td>accordion</td>
<td>
是否开启手风琴模式
</td>
<td>boolean</td>
<td>
`false`
</td>
</tr>
<tr>
<td>onlyIconControl</td>
<td>
是否仅允许节点左侧图标控制展开伸缩。
- 默认为 `false`,即点击节点本身也可控制伸缩
- 若值为 `true`,则只能通过节点左侧图标来展开收缩
</td>
<td>boolean</td>
<td>
`false`
</td>
</tr>
<tr>
<td>isJump</td>
<td>
是否允许点击节点时弹出新窗口跳转。若为 `true`,则需在对应的 data 中设定 href 属性url 格式)
</td>
<td>boolean</td>
<td>
`false`
</td>
</tr>
<tr>
<td>showLine</td>
<td>
是否开启节点连接线。若设为 `false`,则节点左侧出现三角图标。
</td>
<td>boolean</td>
<td>
`true`
</td>
</tr>
<tr>
<td>
[customName](#options.customName) <sup>2.8.14+</sup>
</td>
<td>
自定义 `data` 数据源中常用的字段名称。
</td>
<td>object</td>
<td>-</td>
</tr>
<tr>
<td>text</td>
<td colspan="3">
自定义默认文本,`object` 类型。支持以下属性:
```
text: {
defaultNodeName: '未命名', // 节点默认名称
none: '无数据' // 数据为空时的提示文本
}
```
</td>
</tr>
<tr>
<td colspan="4" style="text-align: center">
<div id="options.callback" lay-pid="options" class="ws-anchor">
[回调函数](#options.callback)
</div>
</td>
</tr>
<tr>
<td>click</td>
<td colspan="3">
<div id="options.click" lay-pid="options" class="ws-anchor">
节点被点击的回调函数。返回的参数如下:
</div>
```
click: function(obj){
console.log(obj.data); // 得到当前点击的节点数据
console.log(obj.state); // 得到当前节点的展开状态open、close、normal
console.log(obj.elem); // 得到当前节点元素
console.log(obj.data.children); // 当前节点下是否有子节点
}
```
</td>
</tr>
<tr>
<td>oncheck</td>
<td colspan="3">
<div id="options.oncheck" lay-pid="options" class="ws-anchor">
点击复选框时的回调函数,返回的参数如下:
</div>
```
oncheck: function(obj){
console.log(obj.data); // 得到当前点击的节点数据
console.log(obj.checked); // 节点是否被选中
console.log(obj.elem); // 得到当前节点元素
}
```
</td>
</tr>
<tr>
<td>operate</td>
<td colspan="3">
<div id="options.operate" lay-pid="options" class="ws-anchor">
点击节点的右侧操作图标的回调函数,返回的参数如下:
</div>
```
operate: function(obj){
var type = obj.type; // 得到操作类型add、edit、del
var data = obj.data; // 得到当前节点的数据
var elem = obj.elem; // 得到当前节点元素
// Ajax 操作
var id = data.id; // 得到节点索引
if(type === 'add'){ // 增加节点
//返回 key 值
return 123;
} else if(type === 'update'){ // 修改节点
console.log(elem.find('.layui-tree-txt').html()); // 得到修改后的内容
} else if(type === 'del'){ // 删除节点
// …
};
}
```
</td>
</tr>
</tbody>
</table>