精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2011-01-24
最后修改:2011-01-26
公开源码,主要使用jquery和普通JavaScript实现.
表格树是用来展示多层次的表格的工具,在实际项目中有使用.并且此前已经发布了不少的版本,这次是最新的一版,比较稳定了.
此前的表格树的详细配置说明 最近修改了此前表格树,根据需求新加了功能以及做了一些相关修改: 1.添加了动态刷新表格树的方法 2.添加了动态添加子节点的方法 3.支持无限层次的节点分页(lazyPage : true) 4.支持非顶层节点的缓冲显示(lazyMorePage:true ) 5.修改此前版本的一些bug,例如删除了analyzeAtServer属性(定义了也没有用)。 下面罗列出新的属性和API方法: 1.lazyPageSize:进行懒加载分页以及懒加载缓存显示的每页页数,默认为10 2.lazyPage:设置为true表示使用懒加载分页,即在除了第一层进行默认的表格树分页之外,在子树的层次也进行分页,具体请看demo中的“懒加载树示例2(lazyPage:true)”链接 3.lazyMorePage:设置为true表示开启使用懒加载的缓存模式,即在对子树层次显示的时候,逐步显示节点,例如子树一层有1000个节点,设置了lazyPageSize=50的话,第一次显示50个节点,点击节点前面的图标再显示画面的50个节点(全部显示完请点20下,呵呵),具体请看demo中的“懒加载树示例3(lazyMorePage:true)”链接 注意:lazyPage和lazyMorePage不可以同时设置为true。 注意:设置了这两种懒加载模式之后,和普通的懒加载处理类似,也是需要做两个java方法返回json串,即dataUrl和lazyLoadUrl中的链接。 4.myTree.reload():进行表格树的重新加载,此前方式只可以通过链接的刷新实现,通过这个新方法可以局部刷新表格树 5.myTree.appendChild('父节点id','子串json串'):对指定的节点添加孩子节点 6.删除analyzeAtServer属性:如果配置了该属性也不会有效果,主要目的是简化了后台传递json串的格式。通过运行demo工程,可以看到后面实时打印出来的json串。 修改了在chrom下面的一个bug:懒加载模式下面的分页出现问题。 关于性能: 这次修改,主要就是做的对懒加载性能方面的改善,在实际项目中发现第一层进行了分页处理之后,但是子节点还有上千条节点,结果依然出现严重的js性能问题,于是想到了继续进行分页的点子。 欢迎提出建议! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-01-25
不好意思,问一下,这个树菜单能不能一级一级往开展了?
|
|
返回顶楼 | |
发表时间:2011-01-25
呵呵 当然可以,不然叫树么.
|
|
返回顶楼 | |
发表时间:2011-01-25
我现在问题是,第一级点 + 号,把下面的全展开了。
是设置哪个属性了?我没有找见 |
|
返回顶楼 | |
发表时间:2011-01-25
还有每一层能不能 设置一个统一的颜色,如 第一级 红色,第二级 白色 每三级 蓝色,这个能不能设置一下了。
|
|
返回顶楼 | |
发表时间:2011-01-25
jiayan 写道 我现在问题是,第一级点 + 号,把下面的全展开了。
是设置哪个属性了?我没有找见 点击加号,这个不用设置属性!因为是我的控件给你做好的,就类似于你用其他的树控件一样,展开节点不用你设置什么东西. 你看一下我的文件里面的详细配置说明.组装成树形是看最主要的两个属性idColumn和parentColumn属性. 详细配置说明地址:http://renjie120.iteye.com/admin/blogs/631822 |
|
返回顶楼 | |
发表时间:2011-01-25
jiayan 写道 还有每一层能不能 设置一个统一的颜色,如 第一级 红色,第二级 白色 每三级 蓝色,这个能不能设置一下了。
这个需求比较具体了,不可能考虑这么多,不过你可以自己去做. 根据我在tr里面加了一个属性_node_path表示当前所在的层级,你根据这个自己写js. 提供了3个回调函数onPagingSuccess, onLazyLoadSuccess,onSuccess... |
|
返回顶楼 | |
发表时间:2011-01-25
renjie120 写道 jiayan 写道 我现在问题是,第一级点 + 号,把下面的全展开了。
是设置哪个属性了?我没有找见 点击加号,这个不用设置属性!因为是我的控件给你做好的,就类似于你用其他的树控件一样,展开节点不用你设置什么东西. 你看一下我的文件里面的详细配置说明.组装成树形是看最主要的两个属性idColumn和parentColumn属性. 详细配置说明地址:http://renjie120.iteye.com/admin/blogs/631822 不好意思,好像是我没有把问题说清楚。我再重新描述一下 我的树菜单有四层,点击第一层的 + 号,把 二、三、四层全给展开了,感觉有点乱,我现在的要求是,点击第一层的+,只展开 第二层,点 第二层的+ ,只展开 第三层,依次类推。说的不知是否清楚。 |
|
返回顶楼 | |
发表时间:2011-01-25
jiayan 写道 renjie120 写道 jiayan 写道 我现在问题是,第一级点 + 号,把下面的全展开了。
是设置哪个属性了?我没有找见 点击加号,这个不用设置属性!因为是我的控件给你做好的,就类似于你用其他的树控件一样,展开节点不用你设置什么东西. 你看一下我的文件里面的详细配置说明.组装成树形是看最主要的两个属性idColumn和parentColumn属性. 详细配置说明地址:http://renjie120.iteye.com/admin/blogs/631822 不好意思,好像是我没有把问题说清楚。我再重新描述一下 我的树菜单有四层,点击第一层的 + 号,把 二、三、四层全给展开了,感觉有点乱,我现在的要求是,点击第一层的+,只展开 第二层,点 第二层的+ ,只展开 第三层,依次类推。说的不知是否清楚。 可以实现. 现在的懒加载就是你说的这种方式,设置lazy:true! 你看我的demo例子就知道了. |
|
返回顶楼 | |
发表时间:2011-01-26
是个不错的东西来着,谢谢分享呀
|
|
返回顶楼 | |