`
nikofan
  • 浏览: 229198 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类

jQuery MiniUI 开发教程 TreeGrid 懒加载(二)

阅读更多
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);

0
0
分享到:
评论

相关推荐

    MVC+EasyUITreeGrid懒加载示例

    MVC+EasyUITreeGrid懒加载示例,主要对EasyUI中TreeGrid组件的使用进行演示。对于正在学此组件的童鞋,不防花个几分钟看一下。本文主要演示:TreeGrid的简单应用、懒加载方法、控件数据格式。

    Ext.ux.tree.treegrid异步加载

    ### Ext.ux.tree.TreeGrid 异步加载知识点详解 #### 一、Ext.ux.tree.TreeGrid简介 在ExtJS框架中,`Ext.ux.tree.TreeGrid`组件是一种结合了树形结构与表格显示特性的控件,适用于展示具有层级关系的数据。通过...

    bootstrap-treeview树节点实现动态加载(懒加载)

    动态加载(也称为懒加载)是一种优化性能的技术,只在用户需要时才加载数据,而不是一次性加载所有数据,这对于处理大量数据或层级结构尤其有用,可以显著提升页面加载速度和用户体验。 本项目在官方Bootstrap ...

    jquery-treegrid 树形表格组件

    **jQuery TreeGrid 知识点详解** jQuery TreeGrid 是一个基于 jQuery 的插件,用于将普通的HTML表格转换成可折叠的树形结构,提供了一种高效且用户友好的方式来组织和展示层次化数据。这个组件在网页开发中非常实用...

    jquery.treegrid.extension.js

    扩展jquery.treegrid.extension.js,实现jquery-treegrid的懒加载,结合jquery.cookie.js来实现缓存,减缓页面大量数据加载

    jquery.treegrid.min.js

    jquery.treegrid.min.js jquery.treegrid.min.jsjquery.treegrid.min.jsjquery.treegrid.min.js

    EASYUI TREEGRID异步加载数据实现方法

    EASYUI TreeGrid是一款基于jQuery和EASYUI框架的数据展示组件,它结合了表格和树形结构的特点,常用于展示层次关系的数据。在EASYUI TreeGrid中,异步加载数据是一项重要的功能,允许用户在需要时动态获取数据,提高...

    treegrid大数据优化

    2. 懒加载策略:TreeGrid中的懒加载是指在用户展开节点时才加载该节点下的子数据,而不是一次性加载所有数据。这样可以避免初次加载时的数据量过大,提高初始渲染速度。当用户滚动或展开新节点时,后台动态获取并...

    treegrid动态加载tree级联更新下拉列表动态计算数量乘以单价的和

    treegrid动态加载tree级联更新下拉列表,保存让下拉列表显示名称,不是id,和动态计算数量乘以单价的和,和总合计,添加一列删除一列,撤回,保存的合计。

    基于jQuery的TreeGrid组件

    **基于jQuery的TreeGrid组件详解** 在Web开发中,数据展示是不可或缺的一部分,尤其是在处理层级结构数据时。jQuery TreeGrid组件就是为此而设计的,它将表格与树形结构结合,提供了一种直观且交互性强的数据展示...

    JQuery TreeGrid(表格)

    - **异步加载**:对于大数据集,可以采用分页或懒加载策略,只在需要时加载部分数据。 总之,jQuery TreeGrid 是一个强大的工具,可以轻松地将普通的HTML表格转变为交互性强、可折叠的树状视图,适用于各种需要...

    jquery easyui treegrid demo 详解

    在本教程中,我们将深入探讨 jQuery EasyUI TreeGrid 的使用,包括增、删、改、查的基本操作。 首先,我们需要引入 jQuery 和 jQuery EasyUI 的库文件。确保在 HTML 文件中添加以下链接: ```html ...

    GridView+Jquery实现的TreeGrid

    在Web开发领域,GridView是一种常见的数据展示控件,它用于以表格形式展示数据源中的信息。JQuery,作为JavaScript库,极大地简化了DOM操作、事件处理以及Ajax交互。当这两者结合时,可以创建出强大的交互式用户界面...

    jquery.treegrid.async.js

    使用Bootstrap-table和JQuery TreeGrid插件展示树形表格,实现异步加载大数据量。

    treegrid_barku4k_treegrid_jqueryajax_

    理解以上知识点,你将能够利用这个“treegrid_barku4k_treegrid_jqueryajax_”实现构建自己的树形表格,同时也能掌握如何利用jQuery和AJAX处理动态数据加载。在实际项目中,还可以结合后端框架如ASP.NET、PHP或Node....

    ASP.NET源码——GridView+Jquery实现的TreeGrid.zip

    在本示例中,"ASP.NET源码——GridView+Jquery实现的TreeGrid.zip" 提供了一个使用ASP.NET和jQuery的实现树形网格视图(TreeGrid)的源代码示例。这个TreeGrid是将数据以层次结构展示,类似于文件系统中的目录结构,...

    TreeGrid.js 表格树插件

    9. **性能优化**:由于表格可能包含大量数据,TreeGrid.js可能采用了懒加载技术,只在需要时加载子节点,减少初次加载时的资源消耗。 10. **文档和示例**:为了方便开发者快速上手,TreeGrid.js通常会提供详细的API...

    jQuery.treeGrid 前端展示

    **二、jQuery.treeGrid 实现步骤** 1. **引入依赖**: 首先,需要在页面中引入 jQuery 和 `jQuery.treeGrid` 的库文件,通常包括 jQuery.js、treeGrid.js 和相应的 CSS 文件。 2. **HTML 结构**: 创建一个基本的 ...

Global site tag (gtag.js) - Google Analytics