Jquery的树插件jqxTreeGrid的使用小结
一、引入相应的js
<link rel="stylesheet" href="../../jqwidgets/styles/jqx.base.css" type="text/css" />
<script type="text/javascript" src="../../scripts/jquery.js"></script>
<script type="text/javascript" src="../../jqwidgets/jqxcore.js"></script>
<script type="text/javascript" src="../../jqwidgets/jqxdata.js"></script>
<script type="text/javascript" src="../../jqwidgets/jqxbuttons.js"></script>
<script type="text/javascript" src="../../jqwidgets/jqxscrollbar.js"></script>
<script type="text/javascript" src="../../jqwidgets/jqxlistbox.js"></script>
<script type="text/javascript" src="../../jqwidgets/jqxdropdownlist.js"></script>
<script type="text/javascript" src="../../jqwidgets/jqxdatatable.js"></script>
<script type="text/javascript" src="../../jqwidgets/jqxtreegrid.js"></script>
二、页面
<div id="treeTable">
</div>
三、js代码
$(document).ready(function () {
var source =
{
dataType: "json",
//设置字段名称,name和后台实体对应
dataFields: [
{ name: "id", type: "string" },
{ name: "pid", type: "string" },
{ name: "name", type: "string" },
{ name: "value", type: "string" },
{ name: "title", type: "string" },
{ name: "type", type: "string" },
{ name: "children", type: "array" },
],
hierarchy:
{
root: "children" //设置孩子节点?
},
url : "getFullTree.shtml?time="+getTimestamp, //数据请求链接
id: "id" //设置主键
};
var dataAdapter = new $.jqx.dataAdapter(source);//加载source
function loadTable(){
var averageW=parseInt($("#treeTable").width()*0.2);//定义表格树每列的宽度
$("#treeTable").jqxTreeGrid(
//设置一些基本的属性
{
source: dataAdapter,
altRows: true,
autoRowHeight: false,
editable: true,
/*checkboxes: true,
hierarchicalCheckboxes: true,*/
editSettings: { saveOnPageChange: true, saveOnBlur: true, saveOnSelectionChange: false, cancelOnEsc: true, saveOnEnter: true, editOnDoubleClick: false, editOnF2: false },
//表头(每列显示的名称,与上文中source中的dataField对应)
columns:[
{
text:"Name",
dataField:'name',
align: "center",
width:averageW
},
{
text:"Value",
dataField:"value",
align:"center",
cellsAlign: 'center',
width:averageW,
},
{
text:"Title",
dataField:"title",
align:"center",
cellsAlign: 'center',
width:averageW,
},
{
text:"Type",
dataField:"type",
align:"center",
cellsAlign: 'center',
width:averageW,
},
{
text:"操作",
dataField:'toolBar',
cellsAlign: 'center',
align: "center",
width:averageW,
cellsRenderer:function(row,clomun,value){
var toolBtn= '<div class="custom-btn-group">'+
'<button class="custom-btn-small add-btn" title="添加" data-toggle="modal" data-target=".add-modal">'+
'<i class="fa fa-plus" aria-hidden="true"></i>'+
'</button>'+
'<button class="custom-btn-small edit-btn" title="编辑" data-toggle="modal" data-target=".edit-modal">'+
'<i class="fa fa-pencil" aria-hidden="true"></i>'+
'</button>'+
'<button class="custom-btn-small del-btn" title="删除">'+
'<i class="fa fa-trash" aria-hidden="true"></i>'+
'</button>'+
'</div>';
return toolBtn;
}
}
]
});
}
loadTable();
$(window).resize(function(){
loadTable();
})
});
四、主要介绍对表格树的CRUD。
4.1、首先要获取所选中的行(很重要)
//rowSelect 当行被点击时执行的事件
$("#treeTable").on('rowSelect', function (event) {
var args = event.args;
//获取选中行的数据
rowData = args.row;
//获取选中行的主键(id)
rowKey = args.key;
});
4.2、增加子节点(官方api没说清楚,坑了我好久)
$("#treeTable").jqxTreeGrid('addRow', message.id, message, 'last', rowKey);//参数解释:'addRow' ——>表明这是一个增加行的方法。
//message.id ——>要增加数据的主键id(如果这个参数设置为null,则新加数据的主键id就会调用jqxTreeGrid默认的方法把父id(选中行的id)加1后作为增加数据的主键id!
//message ——> 要增加的数据。
//'last' ——> 设置新增的数据在表格中显示的位置(last:将新增的数据放在所选节点下的最后一行。first:将新增的数据放在所选节点下的第一行)
//rowKey ——> 所选节点的id(父节点的id,主要是判断新增的数据该放在哪个节点(行)下)
4.3、修改节点
$("#treeTable").jqxTreeGrid('updateRow', rowKey, message);//参数解释:updateRow ——> 表明这是一个更新方法
//rowKey ——> 所选行的主键id
//message ——> 更新的数据
4.4、删除节点
$("#treeTable").jqxTreeGrid('deleteRow',rowKey);//参数解释:
//deleteRow ——> 表明这是一个删除方法
//rowKey —— > 要删除节点(行)的主键id
4.5、效果图

五、官方API链接
Jquery的树插件jqxTreeGrid的使用小结的更多相关文章
- Jquery的树插件jqxTreeGrid的使用小结(实现基本的增删查改操作)
一.引入相应的js <link rel="stylesheet" href="../../jqwidgets/styles/jqx.base.css" t ...
- JQuery Ztree 树插件配置与应用小结
JQuery Ztree 树插件配置与应用小结 by:授客 QQ:1033553122 测试环境 Win7 jquery-3.2.1.min.js 下载地址: https://gitee.com/is ...
- 基于jquery下拉列表树插件代码
分享一款基于jquery下拉列表树插件代码.这是一款实用的jquery 树形下拉框 下拉树代码下载.效果图如下: 在线预览 源码下载 实现的代码. html代码: <table width= ...
- Jquery ztree树插件
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- Jquery ztree树插件2
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- C#结合Jquery LigerUI Tree插件构造树
Jquery LigerUI Tree是Jquery LigerUI()的插件之一,使用它可以快速的构建树形菜单.呵呵 废话不说了,直入正题,下面介绍C#结合ligerui 构造树形菜单的两种方法 1 ...
- 顶级jQuery树插件
顶级jQuery树插件 顶级jQuery树插件 2013-03-05 17:20 139人阅读 评论(0) 收藏 举报 jsTree JsTree是一个基于jQuery的Tree控件.支持HTML.J ...
- 基于bootstrap的jQuery多级列表树插件 treeview
http://www.cnblogs.com/mfc-itblog/p/5233453.html http://www.htmleaf.com/jQuery/Menu-Navigation/20150 ...
- zTree 优秀的jquery树插件
zTree 优秀的jquery树插件,文档详细,渲染快 使用方法: 1.引用zTree的js和css文件 <link href="~/Content/zTree_v3/css/zTre ...
随机推荐
- 201521123015 《Java程序设计》第13周学习总结
1. 本周学习总结 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? IP地址不同 ...
- Servlet第四篇【request对象常用方法、应用】
什么是HttpServletRequest HttpServletRequest**对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,**HTTP请求头中的所有信息都封装在这个对象中,开发人 ...
- PHP 安装配置
./configure --prefix=/usr/local/php --with-libdir=/lib/x86_64-linux-gnu --with-config-file-path=/usr ...
- JVM 菜鸟进阶高手之路九(解惑)
转载请注明原创出处,谢谢! 在第八系列最后有些疑惑的地方,后来还是在我坚持不懈不断打扰笨神,阿飞,ak大神等,终于解决了该问题.第八系列地址:http://www.cnblogs.com/lirenz ...
- 参加Java培训你必须知道的五点真相!
相信大家都有过到招聘网站投简历.找工作的经历.当一份份简历发出三天后,左等右等连一个电话没有等来,心中不免有些失落,有些焦虑.这个时侯,很多培训机构就会纷纷给你打电话以各种名义让你参加各种IT技能培训 ...
- JSTL之c:set
<jsp:setProperty>标记只能用来做一件事,那就是设置bean的性质. 但是,如果你想设置一个Map中的值呢?或者说想在Map中创建新的一项呢?或者只是希望创建一个新的请求作用 ...
- mac pycharm 里table键设置为4个空格键
Operation flow: File--Default Settings editor--code style--python
- 学习ExtJS的grid布局
这是之前学习ExtJS布局的时候我导师让我重点熟悉的内容.之后会发一个最近写的结合MVC项目的grid布局的案例. 上一篇关于ExtJS的学习资料什么的都已经更在上一篇了,这里只是对一些代码的记录. ...
- 程序编译没错,运行报错:无法定位程序输入点GT_BufLaserFollowRatio(这是函数)于动态链接库GTS.DLL上
:DLL里面没有导出该函数 :DLL没放进DEBUGS文件夹 (当时的情况是这个)
- Java客户端调用.NET的WebService
项目需要去调用.NET的WebSrevice,本身是Java,研究了半天,终于有些头绪,记下来. 1,新建.NET WebService.只在原方法上加上一个string类型的参数str [WebMe ...