JQuery EasyUI(49)

本文深入讲解了JQuery EasyUI中的TreeGrid(树型表格)组件的加载方式、属性、事件和方法,包括如何通过JSON文件和JS加载数据,以及如何使用TreeGrid的各种功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

                 第三十八章: TreeGrid(树型表格)组件

学习要点:

  1. 加载方式
  2. 属性列表
  3. 事件列表
  4. 方法列表

 一、加载方式:

//建立一个JSON文件

1.class 加载方式

<!DOCTYPE html>
<html>
  <head>
    <title>JQuery Easy UI</title>
    <meta charset="utf-8"/>
    <script type="text/javascript" src="easyui/jquery.min.js"></script>
    <script type="text/javascript" src="easyui/jquery.easyui.min.js"></script>     
    <script type="text/javascript" src="easyui/locale/easyui-lang-zh_CN.js"></script>     
    <script type="text/javascript" src="js/index.js"></script> 
    <link rel="stylesheet" type="text/css" href="easyui/themes/default/easyui.css"/>
    <link rel="stylesheet" type="text/css" href="easyui/themes/icon.css"/> 
    <style>
       .textbox{
            height:200px;
            margin:0;
            padding:0 2px;
            box-sizing:content-box;
       }
    </style>             
</head>
  <body>
     <table class="easyui-treegrid" style="width:12px;" data-options="url:'treegrid.json',idfield:'id',treeField:'name'">
      <thead>
         <tr> 
           <th data-options="field:'name',width:180" >菜单名称</th>
           <th data-options="field:'date',width:180">创建时间</th>
         </tr>
      </thead>
     </table> 
  </body>
</html>
//treegrid.json
[
  { 
   "id":1,
   "name":"系统管理",
   "date":"2015-10-10",
   "children":[{
           "id":2,
           "name":"主机信息", 
           "date":"2015-10-10",                           
         }]
   },{ 
   "id":3,
   "name":"会员管理",
   "date":"2015-10-10",
   "children":[{
           "id":4,
           "name":"认证审核", 
           "date":"2015-10-10",                           
         }]
   }
]

2.JS 加载方式

<head>
  <style>
      .textbox{
          height:200px;
          margin:0;
          padding:0 2px;
          box-sizing:content-box;
     }
  </style>
</head>
<body>
    <table id="box"></table>
</body>
$(function(){
    $('#box').treegrid({
       url:'treegrid.json',
       width:400,
       idField:'id',
       treeField:'name',
       columns:[[
           { 
             field:'name',
             title:'菜单名称',
             width:180,
           },
           { 
             field:'date',
             title:'创建时间',
             width:180,
           },
         ]]
     });
});
//treegrid.json
[
  { 
   "id":1,
   "name":"系统管理",
   "date":"2015-10-10",
   "children":[{
           "id":2,
           "name":"主机信息", 
           "date":"2015-10-10",                           
         }]
   },{ 
   "id":3,
   "name":"会员管理",
   "date":"2015-10-10",
   "children":[{
           "id":4,
           "name":"认证审核", 
           "date":"2015-10-10",                           
         }]
   }
]

 

二、属性列表:

树型表格扩展自dataGrid(数据表格),树型表格新增的属性如下:

TreeGrid属性
属性名类型说明
idFieldstring定义关键字段来标识树节点。(必须的)
treeFieldstring定义树节点字段。(必须的)
animateboolean定义在节点展开或者折叠的时候是否显示动画效果。
loaderfunction(param,success,error)定义以何种方式从远程服务器读取数据。返回false可以忽略该动作。该函数具有以下属性:param:传递到远程服务器的参数对象。success(data):当检索数据成功的时候调用的回调函数。error():当检索数据失败的时候调用的回调函数。
loadFilterfunction(data,parentId)返回过滤后的数据进行展示。

方法和DataGrid一致,不在重复!略。

 

三、事件列表:

树型表格的事件扩展自datagrid(数据表格),树型表格新增的事件如下:

TreeGrid事件
事件名参数说明
onClickRowrow在用户点击节点的时候触发。
onDblClickRowrow在用户双击节点的时候触发。
onClickCellfield,row在用户点击单元格的时候触发。
onDblClickCellfield,row在用户双击单元格的时候触发。
onBeforeLoadrow,param在请求数据加载之前触发,返回false可以取消加载动作。
onLoadSuccessrow,data数据加载完成之后触发。
onLoadErrorarguments数据加载失败的时候触发。参数和$.ajax()函数的'error'回调函数一样。
onBeforeExpandrow在节点展开之前触发,返回false可以取消展开节点的动作。
onExpandrow在节点展开的时候触发。
onBeforeCollapserow在节点折叠之前触发,返回false可以取消折叠节点的动作。
onCollapserow在节点被折叠的时候触发。
onContextMenue,row在右键点击节点的时候触发。
onBeforeEditrow在用户开始编辑节点的时候触发。
onAfterEditrow,changes在用户完成编辑的时候触发。
 onCancelEditrow在用户取消编辑节点的时候触发。

事件和DataGrid基本一致,代码演示忽略。

 

四、方法列表:

 很多方法都是用'id'命名参数,而'id'参数代表数节点的值。

TreeGrid方法
方法名参数说明
optionsnone返回树型表格的属性。
resizeoptions设置树型表格大小,options包含两个属性:width:树型表格的新宽度。height:树型表格的新高度。
fixRowHeigthid修正指定的横高。
loadparam读取并显示主页内容。
loadDatadata读取树型表格数据。
reloadid重新加载树型表格数据。如果'id'属性有值,将重新载入指定树型行,否则重新载入所有行。
reloadFooterfooter重新载入页脚数据。
getDatanone获取载入数据。
getFooterRownone获取页脚数据。
getRootnone获取根节点,返回节点对象。
getRootsnone获取所有根节点,返回节点数组。
getParentid获取父节点。
getChildrenid获取子节点。
getSelectenone获取选择的节点并返回它,如果没有节点被选中则返回null。
getSelectionsnone获取所有选择的节点。
getLevelnone获取指定节点等级。
findid查找指定节点并返回节点数据。
selectid选择一个节点。
unselectid反选一个节点。
selectAllnone选择所有节点。
unselectAllnone反选所有节点。
collapse id折叠一个节点。
expandid展开一个节点。
collapseAllid折叠所有节点。
expandAllid展开所有节点。
expandToid展开从根节点到指定节点之间的所有节点。
toggleid节点展开/折叠状态触发器。
appendparam追加节点到一个父节点,'param'参数包括以下属性:param:父节点ID,如果未指定则追加到根节点。data:数组,节点数据。
insertparam插入一个新的节点到指定节点,'param'参数包括以下属性:before:插入指定节点ID值之前。after:插入指定节点ID值之后。data:新节点数据。
removeid移除一个节点和它的所有子节点。
popid弹出并返回节点数据以及它的子节点之后删除。
refreshid涮新指定节点。
updateparam更新指定节点。'param'参数包括以下属性:id:要更新的节点的ID。row:新的行数据。
beginEditid开始编辑一个节点。
endEditid结束编辑一个节点。
cancelEditid取消编辑一个节点。
getEditorsid获取指定行编辑器,每个编辑器都包含以下属性:actions:编辑器执行的动作。target:目标管理器的JQuery对象。field:字段名称。type:编辑器类型。
getEditparam获取指定编辑器,'param'参数包含2个属性:id:行节点ID。field:字段名称。

方法和DataGrid一致,代码演示忽略。

 

作者:Roger_CoderLife

链接:https://blog.csdn.net/Roger_CoderLife/article/details/103871280

本文根据网易云课堂JQuery EasyUI视频教程翻译成文档,转载请注明原文出处,欢迎转载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值