TreeGrid:懒加载
参考示例:
TreeGrid:懒加载
创建代码
<div id="treegrid1" class="mini-treegrid" style="width:600px;height:250px;"
url="../data/TreeService.aspx?method=LoadNodes" showTreeIcon="true" textField="text" idField="id"
treeColumn="filename" onbeforeload="onBeforeTreeLoad">
<div property="columns">
<div name="filename" field="name" width="150">名称</div>
<div field="type" width="100">类型</div>
<div field="size" width="100" dateFormat="yyyy-MM-dd">大小</div>
<div field="createdate" width="100" dateFormat="yyyy-MM-dd">创建日期</div>
</div>
</div>
服务端返回数据
[{
id: "form",
text: "Form",
......
isLeaf: false, //是否叶子节点:+和-号
expanded: false //节点处于收缩状态
},
......
]
其中,isLeft 说明此节点是否有下一级节点。expanded 表示此节点处于折叠状态。
懒加载事件
当用户点击"+"图标时,会自动加载下一级节点,此时会把当前节点id传递到后台,也可以拦截加载事件,增加额外属性:
function onBeforeTreeLoad(e) {
var tree = e.sender; //树控件
var node = e.node; //当前节点
var params = e.params; //参数对象
//可以传递自定义的属性
params.myField = "123"; //后台:request对象获取"myField"
}
服务端处理
服务端通过request获取"id"属性后,加载此节点的下一级节点数组,并通过JSON返回。
String id = Request["id"];
if (String.IsNullOrEmpty(id)) id = "-1";
//获取下一级节点
String sql = "select * from plus_file where pid = '" + id + "' order by updatedate";
ArrayList folders = DBUtil.Select(sql);
//判断节点,是否有子节点。如果有,则处理isLeaf和expanded。
for (int i = 0, l = folders.Count; i < l; i++)
{
Hashtable node = (Hashtable)folders[i];
String nodeId = node["id"].ToString();
String sql2 = "select * from plus_file where pid = '" + nodeId + "' order by updatedate";
ArrayList nodes = DBUtil.Select(sql2);
if (nodes.Count > 0)
{
node["isLeaf"] = false;
node["expanded"] = false;
}
}
//返回JSON
String json = PluSoft.Utils.JSON.Encode(folders);
Response.Write(json);
分享到:
相关推荐
MVC+EasyUITreeGrid懒加载示例,主要对EasyUI中TreeGrid组件的使用进行演示。对于正在学此组件的童鞋,不防花个几分钟看一下。本文主要演示:TreeGrid的简单应用、懒加载方法、控件数据格式。
### Ext.ux.tree.TreeGrid 异步加载知识点详解 #### 一、Ext.ux.tree.TreeGrid简介 在ExtJS框架中,`Ext.ux.tree.TreeGrid`组件是一种结合了树形结构与表格显示特性的控件,适用于展示具有层级关系的数据。通过...
**jQuery TreeGrid 知识点详解** jQuery TreeGrid 是一个基于 jQuery 的插件,用于将普通的HTML表格转换成可折叠的树形结构,提供了一种高效且用户友好的方式来组织和展示层次化数据。这个组件在网页开发中非常实用...
动态加载(也称为懒加载)是一种优化性能的技术,只在用户需要时才加载数据,而不是一次性加载所有数据,这对于处理大量数据或层级结构尤其有用,可以显著提升页面加载速度和用户体验。 本项目在官方Bootstrap ...
扩展jquery.treegrid.extension.js,实现jquery-treegrid的懒加载,结合jquery.cookie.js来实现缓存,减缓页面大量数据加载
jquery.treegrid.min.js jquery.treegrid.min.jsjquery.treegrid.min.jsjquery.treegrid.min.js
EASYUI TreeGrid是一款基于jQuery和EASYUI框架的数据展示组件,它结合了表格和树形结构的特点,常用于展示层次关系的数据。在EASYUI TreeGrid中,异步加载数据是一项重要的功能,允许用户在需要时动态获取数据,提高...
2. 懒加载策略:TreeGrid中的懒加载是指在用户展开节点时才加载该节点下的子数据,而不是一次性加载所有数据。这样可以避免初次加载时的数据量过大,提高初始渲染速度。当用户滚动或展开新节点时,后台动态获取并...
treegrid动态加载tree级联更新下拉列表,保存让下拉列表显示名称,不是id,和动态计算数量乘以单价的和,和总合计,添加一列删除一列,撤回,保存的合计。
**基于jQuery的TreeGrid组件详解** 在Web开发中,数据展示是不可或缺的一部分,尤其是在处理层级结构数据时。jQuery TreeGrid组件就是为此而设计的,它将表格与树形结构结合,提供了一种直观且交互性强的数据展示...
- **异步加载**:对于大数据集,可以采用分页或懒加载策略,只在需要时加载部分数据。 总之,jQuery TreeGrid 是一个强大的工具,可以轻松地将普通的HTML表格转变为交互性强、可折叠的树状视图,适用于各种需要...
在本教程中,我们将深入探讨 jQuery EasyUI TreeGrid 的使用,包括增、删、改、查的基本操作。 首先,我们需要引入 jQuery 和 jQuery EasyUI 的库文件。确保在 HTML 文件中添加以下链接: ```html ...
在Web开发领域,GridView是一种常见的数据展示控件,它用于以表格形式展示数据源中的信息。JQuery,作为JavaScript库,极大地简化了DOM操作、事件处理以及Ajax交互。当这两者结合时,可以创建出强大的交互式用户界面...
使用Bootstrap-table和JQuery TreeGrid插件展示树形表格,实现异步加载大数据量。
理解以上知识点,你将能够利用这个“treegrid_barku4k_treegrid_jqueryajax_”实现构建自己的树形表格,同时也能掌握如何利用jQuery和AJAX处理动态数据加载。在实际项目中,还可以结合后端框架如ASP.NET、PHP或Node....
在本示例中,"ASP.NET源码——GridView+Jquery实现的TreeGrid.zip" 提供了一个使用ASP.NET和jQuery的实现树形网格视图(TreeGrid)的源代码示例。这个TreeGrid是将数据以层次结构展示,类似于文件系统中的目录结构,...
9. **性能优化**:由于表格可能包含大量数据,TreeGrid.js可能采用了懒加载技术,只在需要时加载子节点,减少初次加载时的资源消耗。 10. **文档和示例**:为了方便开发者快速上手,TreeGrid.js通常会提供详细的API...
**二、jQuery.treeGrid 实现步骤** 1. **引入依赖**: 首先,需要在页面中引入 jQuery 和 `jQuery.treeGrid` 的库文件,通常包括 jQuery.js、treeGrid.js 和相应的 CSS 文件。 2. **HTML 结构**: 创建一个基本的 ...