带有复选框可折叠的树形结构

所属分类:导航-文件树

 23417  117  查看评论 (81)
带有复选框可折叠的树形结构 ie兼容8

更新时间:2017-5-31 22:50:33

更新说明:1、给复选框增加了onchange事件,当复选框改变后可以执行传递的回调事件,这样就可以获取每个复选框的属性和值了,更灵活的应用


更新时间:2017/5/4 下午4:54:42

更新说明:

                1、文件体积缩小到了180kb左右

                2、可以给每个复选框添加一些额外数据,即给复选框添加data-xxx="yyy"属性

<ul id="demo">
</ul>
<script>
	layui.use('tree',
	function() {
		var tree = layui.tree({
			elem: '#demo',
			//指定元素,生成的树放到哪个元素上
			check: 'checkbox',
			//勾选风格
			skin: 'as',
			//设定皮肤
			drag: true,
			//点击每一项时是否生成提示信息
			checkboxName: 'aa[]',
			//复选框的name属性值
			checkboxStyle: "",
			//设置复选框的样式,必须为字符串,css样式怎么写就怎么写
			click: function(item) { //点击节点回调
				console.log(item)
			},
			nodes: [ //节点
			{
				name: '常用文件夹',
				//节点名称
				spread: true,
				//是否是展开状态,true为展开状态
				href: "http://www.baidu.com",
				//设置节点跳转的链接,如果不设置则不会跳转
				target: "_self",
				//节点链接打开方式
				alias: 'changyong',
				checkboxValue: 1,
				//复选框的值
				checked: true,
				//复选框默认是否选中
				children: [{
					name: '所有未读',
					alias: 'weidu',
					checked: true,
					checkboxValue: 2
				},
				{
					name: '置顶邮件',
				},
				{
					name: '标签邮件',
					checked: false,
					checkboxValue: 3
				}]
			},
			{
				name: '我的邮箱',
				checked: true,
				spread: true,
				children: [{
					name: 'QQ邮箱',
					checked: true,
					checkboxValue: 4,
					spread: true,
					children: [{
						name: '收件箱',
						checked: false,
						checkboxValue: 5,
						children: [{
							name: '所有未读',
							checked: false,
							checkboxValue: 6,
							children: [{
								name: '一周未读',
								checked: false,
								checkboxValue: 6
							}]
						},
						{
							name: '置顶邮件',
							checked: false,
							checkboxValue: 7
						},
						{
							name: '标签邮件',
							checked: false,
							checkboxValue: 8
						}]
					},
					{
						name: '已发出的邮件',
						checked: false,
						checkboxValue: 9
					},
					{
						name: '垃圾邮件',
						checked: false,
						checkboxValue: 10
					}]
				},
				{
					name: '阿里云邮',
					checked: true,
					checkboxValue: 11,
					children: [{
						name: '收件箱',
						checked: true,
						checkboxValue: 12
					},
					{
						name: '已发出的邮件',
						checked: true,
						checkboxValue: 13
					},
					{
						name: '垃圾邮件',
						checked: true,
						checkboxValue: 14
					}]
				}]
			}]
		});
</script>


相关插件-文件树

dtree权限控制复选框插件

dtree权限控制复选框插件
  文件树
 22144  123

dhtmlxTree树形控件

dhtmlxTree 是树菜单,允许我们快速开发界面优美,基于Ajax的javascript库.
  文件树
 12424  21

jQuery目录树插件

jQuery文件树插件
  文件树
 6022  22

jquery文件树-jQueryFileTree

JQUERY FILE TREE是一个可配置的,AJAX的文件浏览器的jQuery插件。作为一行JavaScript代码,您可以创建一个定制的,完全互动的文件树。
  文件树
 41482  53

讨论这个项目(81)回答他人问题或分享插件使用方法奖励jQ币

    那抹???谁藏╀ 0
    2017/9/14 20:10:35

    这个看起来不错

        二,才叫范^0
        2017/9/21 17:59:14

        看起来是不错

    回复
    zzz 0
    2017/9/12 18:54:24
    请问 layUI更新2.0版本以后不兼容,是否有解决办法?
        xta fnhc tewq0
        2017/9/13 22:24:30
        这个目前没有,我没有拿到他的源码
    回复
    ≮想伱越久≯ 0
    2017/9/12 11:06:11
    onchange: function() { //当当前input发生变化后所执行的回调    console.log(this);},

    逗号报错算什么意思

        xta fnhc tewq0
        2017/9/13 22:23:51
        一个小括号被注释掉了,你把注释放到逗号后面就没事了
    回复
    ≮想伱越久≯ 0
    2017/9/12 11:05:21

    逗号报错?????这算啥yisi啊?

    回复
    黄冬萍-SZMSD 0
    2017/9/7 14:32:08

    作者,你好,我想问一下,相比于layui的源码,你这边改的主要是哪些文件?因为我项目里已经有了layui,如果我需要用到你这个的话,我需要替换掉哪些文件?是不是一个layui.js和一个tree.js?css是不是也要同时替换呢?谢谢。。。

        xta fnhc tewq0
        2017/9/9 20:45:56

        我就改了tree.js

    回复
    wlk 0
    2017/9/7 9:09:21
    用这个插件,怎么把后台返回的id绑定到树形结构上渲染出来呢 回复
    ?? ?? ?? 0
    2017/8/18 17:30:22

    为什么插件引用过来之后复选框默认是选中状态,但是没有显示,点击复选框,没有任何反应,选中不了,求解

        爱哭的秀才0
        2017/9/11 10:59:10
        兄弟,你那选中不了问题有没有解决啊
    回复
    bininc 0
    2017/8/16 18:45:56
    插件很实用,下过来看看怎么用 回复
    彼时年少 0
    2017/7/25 18:00:57

    请问 为什么我ajax封装的json串传递过去不行,但是把它拷贝出来粘贴就又可以了???

        xta fnhc tewq0
        2017/7/29 16:55:35

        不太明白

    回复
    彼时年少 0
    2017/7/25 17:59:41

    你好 请问为什么我用ajax请求后获取的json串不行,而将这个json串打印出来拷贝进去又可以???

        Memory0
        2017/7/27 14:25:43
        var pid_0 = $("#hidden").val(); pid_0 = JSON.parse(pid_0) || {};
    回复
取消回复