MultipleTreeSelect.js插件重新渲染
时间: 2023-10-24 09:05:41 浏览: 30
要重新渲染MultipleTreeSelect.js插件,你可以调用该插件的实例对象的rebuild方法。例如,如果你的MultipleTreeSelect实例对象命名为mtSelect,则可以通过以下方式重新渲染插件:
```
mtSelect.rebuild();
```
这将会重新渲染整个MultipleTreeSelect插件,并应用任何已更改的选项或数据。请注意,在重新渲染插件之前,你需要确保你的数据和选项已经更新了。
相关问题
MultipleTreeSelect.js插件怎么重新渲染
如果需要重新渲染 MultipleTreeSelect.js 插件,可以调用插件提供的 `refresh` 方法。这个方法会重新根据当前配置参数和数据源来渲染选择框。
例如,假设你已经在页面中使用 MultipleTreeSelect.js 插件创建了一个选择框,并且在后面修改了数据源,需要重新渲染选择框以显示最新的数据,你可以按照以下步骤来实现:
1. 获取 MultipleTreeSelect.js 实例
首先需要获取 MultipleTreeSelect.js 实例,可以通过选择框容器元素来获取:
```javascript
var selectBox = $('#tree').data('MultipleTreeSelect');
```
2. 修改数据源
然后修改选择框的数据源,例如:
```javascript
selectBox.options.data = [
{ id: '4', text: '节点4' },
{ id: '5', text: '节点5', children: [
{ id: '5-1', text: '节点5-1' },
{ id: '5-2', text: '节点5-2' }
]}
];
```
3. 调用 refresh 方法
最后调用 `refresh` 方法重新渲染选择框:
```javascript
selectBox.refresh();
```
这样就完成了 MultipleTreeSelect.js 插件的重新渲染。需要注意的是,如果你修改了插件的配置参数,也需要重新调用 `MultipleTreeSelect` 函数来初始化插件,否则插件不会根据新的配置参数进行渲染。
MultipleTreeSelect.js api
MultipleTreeSelect.js插件提供了以下API:
### 初始化
```javascript
new MultipleTreeSelect(el, options)
```
- `el`:选择器或DOM元素,表示MultipleTreeSelect容器元素
- `options`:可选的选项对象,可以包含以下属性:
| 属性 | 类型 | 默认值 | 描述 |
| --- | --- | --- | --- |
| data | Array | [] | 选择器的数据源 |
| placeholder | String | '请选择' | 默认提示文本 |
| value | String/Array | '' | 初始选中项的值,可以是单个值或多个值 |
| selectAll | Boolean | false | 是否显示全选按钮 |
| multiple | Boolean | true | 是否支持多选 |
| cascade | Boolean | true | 是否支持级联选择 |
| onlyLeaf | Boolean | false | 是否只能选择叶子节点 |
| max | Number | 0 | 最多可以选择的节点数,0表示不限制 |
| search | Boolean | false | 是否显示搜索框 |
| searchPlaceholder | String | '搜索' | 搜索框的提示文本 |
| searchEmptyText | String | '无匹配数据' | 搜索无结果时的提示文本 |
| searchHighlight | Boolean | true | 是否高亮显示搜索结果 |
| accordion | Boolean | false | 是否开启手风琴效果 |
| lazy | Boolean | false | 是否启用懒加载 |
| lazyLoad | Function(treeNode, resolve) | undefined | 懒加载函数,返回Promise对象 |
| checkStrictly | Boolean | false | 是否严格遵循父子节点不联动,即子节点的选中状态不会影响父节点 |
| beforeClose | Function(selectInstance) | undefined | 关闭选择器前执行的函数 |
| onClose | Function(selectInstance) | undefined | 关闭选择器后执行的函数 |
| beforeSelect | Function(value, selectInstance) | undefined | 点击选择前执行的函数 |
| onSelect | Function(value, label, extra, selectInstance) | undefined | 点击选择后执行的函数 |
| beforeCheck | Function(value, checked, indeterminate, selectInstance) | undefined | 勾选节点前执行的函数 |
| onCheck | Function(value, label, extra, selectInstance) | undefined | 勾选节点后执行的函数 |
| onInputChange | Function(value, selectInstance) | undefined | 输入框内容变化时执行的函数 |
| onSearch | Function(value, selectInstance) | undefined | 搜索框内容变化时执行的函数 |
### 实例方法
```javascript
selectInstance.rebuild()
```
重新渲染MultipleTreeSelect插件。
```javascript
selectInstance.setValue(value)
```
设置MultipleTreeSelect的选中值。`value`可以是一个字符串或字符串数组。
```javascript
selectInstance.getValue()
```
获取MultipleTreeSelect的选中值,返回一个字符串或字符串数组。
```javascript
selectInstance.getLabel()
```
获取MultipleTreeSelect的选中文本,返回一个字符串或字符串数组。
```javascript
selectInstance.getExtra()
```
获取MultipleTreeSelect的选中节点的额外信息,返回一个对象或对象数组。
```javascript
selectInstance.show()
```
显示MultipleTreeSelect插件。
```javascript
selectInstance.hide()
```
隐藏MultipleTreeSelect插件。
```javascript
selectInstance.disable()
```
禁用MultipleTreeSelect插件。
```javascript
selectInstance.enable()
```
启用MultipleTreeSelect插件。
```javascript
selectInstance.destroy()
```
销毁MultipleTreeSelect插件,释放内存。