首页 web前端 Bootstrap教程 浅谈风格的树形插件​bootstrap-treeview的使用方法

浅谈风格的树形插件​bootstrap-treeview的使用方法

Jan 29, 2021 am 10:02 AM
bootstrap

浅谈风格的树形插件​bootstrap-treeview的使用方法

相关推荐:《bootstrap基础教程

bootstrap-treeview是一款效果非常酷的基于bootstrap的jQuery多级列表树插件,该jQuery插件基于Twitter Bootstrap。写这篇文章的目的在于记录下使用方法,以期后用。

一、插件官网:https://jquery-plugins.net/bootstrap-tree-view
二、demo示例:http://jonmiles.github.io/bootstrap-treeview/

三、依赖:

Bootstrap v3.3.4 (>= 3.0.0)
jQuery v2.1.3 (>= 1.9.0)
登录后复制

四、使用方法:

1.html文件引入依赖:

<link rel="stylesheet" href="css/bootstrap.min.css" />
<link rel="stylesheet" href="css/bootstrap-treeview.min.css" />
<script type="text/javascript" src="js/jquery-3.2.1.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js" ></script>
<script type="text/javascript" src="js/bootstrap-treeview.min.js" ></script>
登录后复制

2.设置一个DOM元素以接收树形数据:

<div id="tree"></div>
登录后复制

3.使用格式:

$(&#39;#tree&#39;).treeview(options);  //其中options选项允许用户定制treeview的默认外观和行为。它们在初始化时作为一个对象被传递给插件。
登录后复制

4.使用示例(js动态获取后台数据,并渲染树形结构):

$(function() {
    $(&#39;#tree&#39;).treeview({
        data: getTree()//节点数据
    });
})

function getTree() {
    //节点上的数据遵循如下的格式:
    var tree = [{
        text: "Node 1", //节点显示的文本值  string
        icon: "glyphicon glyphicon-play-circle", //节点上显示的图标,支持bootstrap的图标  string
        selectedIcon: "glyphicon glyphicon-ok", //节点被选中时显示的图标       string
        color: "#ff0000", //节点的前景色      string
        backColor: "#1606ec", //节点的背景色      string
        href: "#http://www.baidu.com", //节点上的超链接
        selectable: true, //标记节点是否可以选择。false表示节点应该作为扩展标题,不会触发选择事件。  string
        state: { //描述节点的初始状态    Object
            checked: true, //是否选中节点
            /*disabled: true,*/ //是否禁用节点
            expanded: true, //是否展开节点
            selected: true //是否选中节点
        },
        tags: [&#39;标签信息1&#39;, &#39;标签信息2&#39;], //向节点的右侧添加附加信息(类似与boostrap的徽章)    Array of Strings
        nodes: [{
            text: "Child 1",
            nodes: [{
                text: "Grandchild 1"
            }, {
                text: "Grandchild 2"
            }]
        }, {
            text: "Child 2"
        }]
    }, {
        text: "Parent 2",
        nodes: [{
            text: "Child 2",
            nodes: [{
                text: "Grandchild 3"
            }, {
                text: "Grandchild 4"
            }]
        }, {
            text: "Child 2"
        }]
    }, {
        text: "Parent 3"
    }, {
        text: "Parent 4"
    }, {
        text: "Parent 5"
    }];

    return tree;
}
登录后复制

五、其他说明:

1、参数详解(可用的参数):

var options = {
    data: data, //data属性是必须的,是一个对象数组    Array of Objects.
    color: "", //所有节点使用的默认前景色,这个颜色会被节点数据上的backColor属性覆盖.        String
    backColor: "#000000", //所有节点使用的默认背景色,这个颜色会被节点数据上的backColor属性覆盖.     String
    borderColor: "#000000", //边框颜色。如果不想要可见的边框,则可以设置showBorder为false。        String
    nodeIcon: "glyphicon glyphicon-stop", //所有节点的默认图标
    checkedIcon: "glyphicon glyphicon-check", //节点被选中时显示的图标         String
    collapseIcon: "glyphicon glyphicon-minus", //节点被折叠时显示的图标        String
    expandIcon: "glyphicon glyphicon-plus", //节点展开时显示的图标        String
    emptyIcon: "glyphicon", //当节点没有子节点的时候显示的图标              String
    enableLinks: false, //是否将节点文本呈现为超链接。前提是在每个节点基础上,必须在数据结构中提供href值。        Boolean
    highlightSearchResults: true, //是否高亮显示被选中的节点        Boolean
    levels: 2, //设置整棵树的层级数  Integer
    multiSelect: false, //是否可以同时选择多个节点      Boolean
    onhoverColor: "#F5F5F5", //光标停在节点上激活的默认背景色      String
    selectedIcon: "glyphicon glyphicon-stop", //节点被选中时显示的图标     String

    searchResultBackColor: "", //当节点被选中时的背景色
    searchResultColor: "", //当节点被选中时的前景色

    selectedBackColor: "", //当节点被选中时的背景色
    selectedColor: "#FFFFFF", //当节点被选中时的前景色

    showBorder: true, //是否在节点周围显示边框
    showCheckbox: false, //是否在节点上显示复选框
    showIcon: true, //是否显示节点图标
    showTags: false, //是否显示每个节点右侧的标记。前提是这个标记必须在每个节点基础上提供数据结构中的值。
    uncheckedIcon: "glyphicon glyphicon-unchecked", //未选中的复选框时显示的图标,可以与showCheckbox一起使用
}
登录后复制

2、方法详解(可用的方法列表):

1.  checkAll(options);//选中所有树节点
2.  checkNode(node | nodeId, options);  //选中一个给定nodeId的树节点
3.  clearSearch();//清除查询结果
4.  collapseAll(options);//折叠所有树节点
5.  collapseNode(node | nodeId, options);//折叠一个给定nodeId的树节点和它的子节点
6.  disableAll(options);//禁用所有树节点
7.  disableNode(node | nodeId, options);//禁用一个给定nodeId的树节点
8.  enableAll(options);//激活所有树节点
9.  enableNode(node | nodeId, options);//激活给定nodeId的树节点
10. expandAll(options);//展开所有节点
11. expandNode(node | nodeId, options);//展开给定nodeId的树节点
12. getCollapsed();//返回被折叠的树节点数组
13. getDisabled();//返回被禁用的树节点数组
14. getEnabled();//返回被激活的树节点数组  
15. getExpanded();//返回被展开的树节点数组
16. getNode(nodeId);//返回与给定节点id相匹配的单个节点对象。
17. getParent(node | nodeId);//返回给定节点id的父节点
18. getSelected();//返回被选定节点的数组。
19. getSiblings(node | nodeId);//返回给定节点的兄弟节点数组
20. getUnselected();//返回未选择节点的数组
21. remove();//删除the tree view component.删除绑定的事件,内部附加的对象,并添加HTML元素。
22. revealNode(node | nodeId, options);//显示给定的树节点,将树从节点扩展到根。
23. search(pattern, options);//在树视图中搜索匹配给定字符串的节点,并在树中突出显示它们。返回匹配节点的数组。
24. selectNode(node | nodeId, options);//选择一个给定的树节点
25. toggleNodeChecked(node | nodeId, options);//Toggles a nodes checked state; checking if unchecked, unchecking if checked.
26. toggleNodeDisabled(node | nodeId, options);//切换节点的禁用状态;
27. toggleNodeExpanded(node | nodeId, options);//切换节点的展开与折叠状态
28. toggleNodeSelected(node | nodeId, options);//切换节点的选择状态
29. uncheckAll(options);//不选所有节点
30. uncheckNode(node | nodeId, options);//不选给定nodeId的节点
31. unselectNode(node | nodeId, options);//不选给定nodeId的节点

说明:可以通过两种方式来调用方法:

1、插件包装器:插件的包装器可以作为访问底层方法的代理。

$(&#39;#tree&#39;).treeview(&#39;methodName&#39;, args);  

其中,多个参数必须使用数组对象来传入。

2、直接使用treeview:你可以通过下面两种方法中的一种来获取treeview对象实例:

//该方法返回一个treeview的对象实例
$(&#39;#tree&#39;).treeview(true).methodName(args);

//对象实例也保存在DOM元素的data中, 可以使用&#39;treeview&#39;的id来访问它。
$(&#39;#tree&#39;).data(&#39;treeview&#39;).methodName(args);
登录后复制

3、事件详解(可用的事件列表):

1.  nodeChecked (event, node) - 一个节点被checked.
2.  nodeUnchecked (event, node) - 一个节点被unchecked.
3.  nodeCollapsed (event, node) - 一个节点被折叠.
4.  nodeDisabled (event, node) - 一个节点被禁用.
5.  nodeEnabled (event, node) - 一个节点被启用.
6.  nodeExpanded (event, node) - 一个节点被展开.
7.  nodeSelected (event, node) - 一个节点被选择.
8.  nodeUnselected (event, node) - 取消选择一个节点.
9.  searchComplete (event, results) - 搜索完成之后触发.
10. searchCleared (event, results) - 搜索结果被清除之后触发.

说明:事件的调用有两种方式:

第 1 种:在参数中使用回调函数来绑定任何事件:
$(&#39;#tree&#39;).treeview({
    //命名约定:以on为前缀,并将事件名的第一个字母转为大写,例如: nodeSelected -> onNodeSelected
    onNodeSelected:function(event, data) {
        // 事件代码...
    }
});      

第 2 种:使用标准的jQuery .on()方法来绑定事件:
$(&#39;#tree&#39;).on(&#39;nodeSelected&#39;,function(event, data) {
    // 事件代码...
});
登录后复制

六、完整demo下载

https://download.csdn.net/download/security_2015/10281802

更多编程相关知识,请访问:编程学习!!

以上是浅谈风格的树形插件​bootstrap-treeview的使用方法的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
2 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Bootstrap Table显示乱码的原因是什么 Bootstrap Table显示乱码的原因是什么 Apr 07, 2025 am 11:30 AM

Bootstrap Table显示乱码的原因主要有字符集不匹配、编码问题和浏览器兼容性差。解决方法包括:1. 确认字符集一致性;2. 检查数据传输编码;3. 更换兼容性更好的浏览器;4. 更新Bootstrap Table版本;5. 确认数据格式正确;6. 清除浏览器缓存。

bootstrap怎么写轮播图 bootstrap怎么写轮播图 Apr 07, 2025 pm 12:54 PM

使用 Bootstrap 创建轮播图需要以下步骤:创建包含轮播图的容器,使用 carousel 类。在容器中添加轮播图图像,用 carousel-item 类和 active 类(仅适用于第一张图像)。添加控制按钮,使用 carousel-control-prev 和 carousel-control-next 类。添加轮播图指标(小圆点),使用 carousel-indicators 类(可选)。设置自动播放,在轮播图容器上添加 data-bs-ride=&quot;carousel&

Bootstrap列表如何改变大小? Bootstrap列表如何改变大小? Apr 07, 2025 am 10:45 AM

Bootstrap 列表的大小取决于包含列表的容器的大小,而不是列表本身。使用 Bootstrap 的网格系统或 Flexbox 可以控制容器的大小,从而间接调整列表项的大小。

PHP配合Bootstrap Table出现乱码如何解决 PHP配合Bootstrap Table出现乱码如何解决 Apr 07, 2025 am 11:27 AM

PHP 配合 Bootstrap Table 显示中文乱码的解决方法:1. 设置 PHP 字符集为 UTF-8;2. 在 PHP 脚本中设置字符集;3. 确保数据库字符集为 UTF-8;4. 设置 Bootstrap Table 的字符集为 "zh-CN";5. 使用 mbstring 扩展强制转换字符集;6. 从其他编码转码数据;7. 检查浏览器编码。

怎么建立bootstrap框架 怎么建立bootstrap框架 Apr 07, 2025 pm 12:57 PM

要建立 Bootstrap 框架,请按照以下步骤操作:通过 CDN 或安装本地副本安装 Bootstrap。创建一个 HTML 文档,将 Bootstrap CSS 链接到 &lt;head&gt; 部分。添加 Bootstrap JavaScript 文件到 &lt;body&gt; 部分。使用 Bootstrap 组件并自定义样式表以满足您的需要。

bootstrap如何上传文件 bootstrap如何上传文件 Apr 07, 2025 pm 01:09 PM

可以通过 Bootstrap 实现文件上传功能,步骤如下:引入 Bootstrap CSS 和 JavaScript 文件;创建文件输入字段;创建文件上传按钮;处理文件上传(使用 FormData 收集数据,然后发送到服务器);自定义样式(可选)。

Bootstrap 5的列表样式有什么变化? Bootstrap 5的列表样式有什么变化? Apr 07, 2025 am 11:09 AM

Bootstrap 5 列表样式改动主要在于细节优化和语义化提升,包括:无序列表默认内边距精简,视觉效果更干净利落;列表样式更强调语义,增强可访问性和可维护性。

Bootstrap支持哪些列表样式? Bootstrap支持哪些列表样式? Apr 07, 2025 am 11:15 AM

Bootstrap支持四种列表样式:无样式列表、有序列表、无序列表(均为默认样式),以及可用于创建水平导航菜单和标签云的内联列表。此外,Bootstrap还提供强大的列表组(list-group)类,可创建带有圆角、边框和背景颜色的列表,用于显示项目列表或导航菜单。

See all articles