jqGrid treegrid 判断父节点怎样判断有没有子节点

22379人阅读
程序员人生(7)
UI前端技术(13)
打工打成股东,然后经历公司清盘,也算是人生一大体验了,呵呵。保持乐观心态,开始寻找下一个目标。
过完年开始找工作,没成想自视甚高的我居然没有接到任何一个我向往的大公司面试电话,怎么会这样??? 难道我命中注定只能待在小公司,~~~~(&_&)~~~~
好不容易朋友推荐了SunGard面试,做摩根史丹利项目的,面试自我感觉良好,可结果还是败了。原因是技术不够强,为什么啊?我面试题基本都答对了啊。
过了近三周又让我去另一个部门面试,这次面试可说前半场胜利,后半场惨败。这下我终于明白为什么上次面试表现那么好还不行了。
原来我欠缺的是多线程,高并发,分布式的事务控制,优化算法的实战经验。悲催啊,这些理论知识可以通过书本学习,实战经验可不就是要去有类似项目的公司积累嘛。
为什么没有公司肯给我这个实践的机会呢?我相信自己还是能胜任的,呵呵!
算了,为了生活先工作吧。
新公司第一个任务的难点是UI方面,要做出Microsoft Project的效果,崩溃,我可一直做后台的,偶尔做做javascript!
没办法,钻研一下吧。初步方案打算用jqGrid实现,以下是树状Grid的部分实现。(截止发帖已经自我否决,还是自己画table吧,比较好控制,时间仓促啊!)
&%@ page language=&java&
pageEncoding=&UTF-8& contentType=&text/charset=utf-8&%&
&%@ taglib uri=&/jsp/jstl/core& prefix=&c& %&
&!DOCTYPE html PUBLIC &-//W3C//DTD XHTML 1.0 Strict//EN& &http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&&
&html xmlns=&http://www.w3.org/1999/xhtml& xml:lang=&en& lang=&en&&
&meta http-equiv=&Content-Type& content=&text/ charset=utf-8& /&
&title&My First Grid&/title&
&link rel=&stylesheet& type=&text/css& media=&screen& href=&&c:url value='/jquery/core/css/custom-theme/jquery-ui-1.8.7.custom.css' /&& /&
&link rel=&stylesheet& type=&text/css& media=&screen& href=&&c:url value='/jquery/jqgrid/css/ui.jqgrid.css' /&& /&
html, body {
margin: 0;
padding: 0;
font-size: 75%;
&script src=&&c:url value='/jquery/core/js/jquery-1.4.4.min.js' /&& type=&text/javascript&&&/script&
&script src=&&c:url value='/jquery/jqgrid/js/i18n/grid.locale-cn.js' /&& type=&text/javascript&&&/script&
&script src=&&c:url value='/jquery/jqgrid/js/jquery.jqGrid.min.js' /&& type=&text/javascript&&&/script&
&script type=&text/javascript&&
$(document).ready(function(){
jQuery(&#jsonmap&).jqGrid({
treeGrid: true,
treeGridModel: 'adjacency', //treeGrid模式,跟json元数据有关
ExpandColumn : 'username',
scroll: &true&,
url: '&c:url value='/system/testGrid.action' /&',
datatype: 'json',
colNames:['编号','姓名','密码','年龄','地址','出生日期'],
colModel:[
{name:'id',index:'id', width:90,sorttype:&int&},
{name:'username',index:'username', width:110,sorttype:&int&},
{name:'password',index:'password', width:80},
{name:'age',index:'age', width:80},
{name:'address',index:'address', width:80},
{name:'time',index:'time', width:80,sorttype:&date&}
pager: &false&,
sortname: 'id',
sortorder: &desc&,
jsonReader: {
root: &dataRows&,
repeatitems : false
treeReader : {
level_field: &level&,
parent_id_field: &parent&,
leaf_field: &isLeaf&,
expanded_field: &expanded&
caption: &jqGrid test&,
mtype: &POST&,
height: &auto&,
// 设为具体数值则会根据实际记录数出现垂直滚动条
rowNum : &-1&,
// 显示全部记录
shrinkToFit:false
// 控制水平滚动条
&table id=&jsonmap&
testGrid.action返回的是如下JSON数据:
[{&id&:0,&username&:&王三&,&level&:0,&address&:&USA&,&isLeaf&:false,&age&:20,&expanded&:true,&password&:&123&},
&{&id&:1,&username&:&王三&,&level&:1,&address&:&USA&,&isLeaf&:false,&age&:21,&parent&:0,&expanded&:true,&password&:&123&},
&{&id&:2,&username&:&王三&,&level&:2,&address&:&USA&,&isLeaf&:true,&age&:22,&parent&:1,&expanded&:true,&password&:&123&}]
附:jqGrid官网文档
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:290971次
积分:3195
积分:3195
排名:第10592名
原创:46篇
转载:81篇
评论:27条
(1)(1)(2)(1)(3)(2)(4)(2)(3)(6)(12)(2)(2)(5)(1)(3)(2)(2)(3)(2)(1)(1)(2)(2)(1)(2)(4)(3)(1)(1)(1)(1)(1)(1)(7)(6)(4)(9)(2)(5)(8)(1)(4)5182人阅读
jqGrid实现树状Grid&&
JQgrid tree 终于有数据了&&
官方文档:&&
问题和注意:&
1. 如果grid的参数存在&rownumbers&: true, &rownumWidth&: 20,那么无法在正确的位置显示ExpandColumn信息,他会显示在ExpandColumn的前一列。所以应该动态计算并放到下一列。可能会引起setTreeRow方法的错误,因为这个方法是使用真实的ExpandColumn。&
2. jsonReader: {&&
&&&&&&&&&&&&&&&&&&& root: &dataRows&, //设定这个参数,有时候也无法正常现实&
&&&&&&&&&&&&&&&&&&& repeatitems : false& //不需要再去后台刷新,否则可能有问题,所以最好第一次就加载所有数据&
&&&&&&&&&&&&&&& }&
3. gridview, boolean 设置为true将提高5~10倍的显示速度。但不能再使用treeGrid, subGrid, 或afterInsertRow事件&
4. 如果getNodeParent方法无效,可能是因为你给的recorddata.parentId的类型不对,这里需要recorddata.parentId是字符串,才能找到的.&
5. collapseNode和collapseRow,expandNode和expandRow一般是成对调用。&
6. 移动一个节点以及它的子节点。要字节加方法,才能实现,其实它至此的treegrid功能很弱,一些东西要自己实现,后面附加一些自己实现的方法&
第一个列子&
/pages/demo/tree.json&
----------------------------------&
&&&&&total&:11,&&
&&&&&page&:1,&&
&&&&&records&:11,&&
&&&&&rows&:[&&
&&&&&&&&{&id&:1,&&name&:&Pandy1&,&&cell&:[&第一级1&,0,null,false,false]},&&
&&&&&&&&{&id&:3,&&name&:&Pandy2&,&&cell&:[&第二级1&,1,1,true,false]},&&
&&&&&&&&{&id&:2,&&name&:&Pandy3&,&&cell&:[&第一级2&,0,null,true,false]}&&
Html代码&&
%@&page&language=&java&&contentType=&text/charset=utf-8&&pageEncoding=&utf-8&&%&&
%@&include&file=&/common/taglibs.jsp&&%&&
&!DOCTYPE&html&PUBLIC&&-//W3C//DTD&HTML&4.01&Transitional//EN&&&http://www.w3.org/TR/html4/loose.dtd&&&
&&&&Insert&title&here&&
&&&&&http-equiv=&Content-Type&&content=&text/&charset=utf-8&&&
&&&&&type=&text/javascript&&src=&&c:url&value=&/pages/org/grid.treegrid.js&&&&
&&&&&type=&text/javascript&&&
&&&&&&&&$(document).ready(function&()&{&&
&&&&&&&&&&&&$(&#treegrid&).jqGrid({&&
&&&&&&&&&&&&&&&&treeGrid:&true,&&
&&&&&&&&&&&&&&&&treeGridModel:&'adjacency',&&
&&&&&&&&&&&&&&&&ExpandColumn:&'name',&&
&&&&&&&&&&&&&&&&ExpandColClick:&true,&&
&&&&&&&&&&&&&&&&url:&'/pages/demo/tree.json',&&
&&&&&&&&&&&&&&&&datatype:&'json',&&
&&&&&&&&&&&&&&&&colNames:&[&管理选项&],&&
&&&&&&&&&&&&&&&&colModel:&[&&
&&&&&&&&&&&&&&&&&&&&{&name:&'name',&index:&'name'&}&&
&&&&&&&&&&&&&&&&],&&
&&&&&&&&&&&&&&&&pager:&&false&,&&
&&&&&&&&&&&&&&&&height:&'auto',&&
&&&&&&&&&&&&&&&&width:&'210',&&
&&&&&&&&&&&&&&&&viewrecords:&true,&&
&&&&&&&&&&&&&&&&//&&&caption:&'none',&&
&&&&&&&&&&&&&&&&jsonReader:&{&&
&&&&&&&&&&&&&&&&&&&&root:&&rows&,&&
&&&&&&&&&&&&&&&&&&&&total:&&total&,&&
&&&&&&&&&&&&&&&&&&&&repeatitems:&true&&
&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&});&&
&&&&&&&&})&&
&&&&&&&&;&&
&id=&treegrid&&&
&id=&ptreegrid&&&
第二个例子&
&&&&{&id&:0,&username&:&王三1&,&level&:0,&address&:&USA&,&isLeaf&:false,&age&:20,&expanded&:true,&password&:&123&},&&
&&&&{&id&:1,&username&:&王三2&,&level&:1,&address&:&USA&,&isLeaf&:false,&age&:21,&parent&:0,&expanded&:true,&password&:&123&},&&
&&&&{&id&:2,&username&:&王三3&,&level&:2,&address&:&USA&,&isLeaf&:true,&age&:22,&parent&:1,&expanded&:true,&password&:&123&}&&
Html代码&&
%@&page&language=&java&&contentType=&text/charset=utf-8&&pageEncoding=&utf-8&&%&&
%@&include&file=&/common/taglibs.jsp&&%&&
&!DOCTYPE&html&PUBLIC&&-//W3C//DTD&HTML&4.01&Transitional//EN&&&http://www.w3.org/TR/html4/loose.dtd&&&
&&&&Insert&title&here&&
&&&&&http-equiv=&Content-Type&&content=&text/&charset=utf-8&&&
&&&&&type=&text/javascript&&src=&&c:url&value=&/pages/org/grid.treegrid.js&&&&
&&&&&type=&text/javascript&&&
&&&&&&&&$(document).ready(function(){&&
&&&&&&&&&&&&jQuery(&#treegrid&).jqGrid({&&
&&&&&&&&&&&&&&&&treeGrid:&true,&&
&&&&&&&&&&&&&&&&treeGridModel:&'adjacency',&//treeGrid模式,跟json元数据有关&,adjacency/nested&&
&&&&&&&&&&&&&&&&ExpandColumn&:&'username',&&
&&&&&&&&&&&&&&&&scroll:&&true&,&&
&&&&&&&&&&&&&&&&url:&'/pages/demo/tree1.json',&&
&&&&&&&&&&&&&&&&datatype:&'json',&&
&&&&&&&&&&&&&&&&colNames:['编号','姓名','密码','年龄','地址','出生日期'],&&
&&&&&&&&&&&&&&&&colModel:[&&
&&&&&&&&&&&&&&&&&&&&{name:'id',index:'id',&width:90,sorttype:&int&},&&
&&&&&&&&&&&&&&&&&&&&{name:'username',index:'username',&width:110,sorttype:&int&},&&
&&&&&&&&&&&&&&&&&&&&{name:'password',index:'password',&width:80},&&
&&&&&&&&&&&&&&&&&&&&{name:'age',index:'age',&width:80},&&
&&&&&&&&&&&&&&&&&&&&{name:'address',index:'address',&width:80},&&
&&&&&&&&&&&&&&&&&&&&{name:'time',index:'time',&width:80,sorttype:&date&}&&
&&&&&&&&&&&&&&&&],&&
&&&&&&&&&&&&&&&&pager:&&false&,&&
&&&&&&&&&&&&&&&&sortname:&'id',&&
&&&&&&&&&&&&&&&&sortorder:&&desc&,&&
&&&&&&&&&&&&&&&&jsonReader:&{&&
&&&&&&&&&&&&&&&&&&&&root:&&dataRows&,&&
&&&&&&&&&&&&&&&&&&&&repeatitems&:&false&&
&&&&&&&&&&&&&&&&},&&
&&&&&&&&&&&&&&&&treeReader&:&{&&
&&&&&&&&&&&&&&&&&&&&level_field:&&level&,&&
&&&&&&&&&&&&&&&&&&&&parent_id_field:&&parent&,&&
&&&&&&&&&&&&&&&&&&&&leaf_field:&&isLeaf&,&&
&&&&&&&&&&&&&&&&&&&&expanded_field:&&expanded&&&
&&&&&&&&&&&&&&&&},&&
&&&&&&&&&&&&&&&&caption:&&jqGrid&test&,&&
&&&&&&&&&&&&&&&&mtype:&&POST&,&&
&&&&&&&&&&&&&&&&height:&&auto&,&&&&//&设为具体数值则会根据实际记录数出现垂直滚动条&&
&&&&&&&&&&&&&&&&rowNum&:&&-1&,&&&&&//&显示全部记录&&
&&&&&&&&&&&&&&&&shrinkToFit:false&&//&控制水平滚动条&&
&&&&&&&&&&&&});&&
&&&&&&&&});&&
&id=&treegrid&&&
一些自己实现的方法&
&&&&&&&&&&
&&&&&&&&setDefaultOpenLevel:&function&(GridConfig,&level)&{&&
&&&&&&&&&&&&var&childRows&=&$(&#&&+&GridConfig.divId).jqGrid('getRootNodes');&&
&&&&&&&&&&&&for&(var&i&=&0;&i&&&childRows.&i++)&{&&
&&&&&&&&&&&&&&&&var&rows&=&$(&#&&+&GridConfig.divId).jqGrid('getNodeChildren',&childRows[0]);&&
&&&&&&&&&&&&&&&&for&(var&m&=&0;&m&&&rows.&m++)&{&&
&&&&&&&&&&&&&&&&&&&&if&(rows[m].level&&=&level)&{&&
&&&&&&&&&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('collapseNode',&rows[m]);&&
&&&&&&&&&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('collapseRow',&rows[m]);&&
&&&&&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&var&trows&=&$(&#&&+&GridConfig.divId).jqGrid('getNodeChildren',&rows[m]);&&
&&&&&&&&&&&&&&&&&&&&for&(var&k&=&0;&k&&&trows.&k++)&{&&
&&&&&&&&&&&&&&&&&&&&&&&&if&(trows[k].level&&=&(level&+&1))&{&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('collapseNode',&trows[k]);&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('collapseRow',&trows[k]);&&
&&&&&&&&&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&}&&
&&&&&&&&},&&
&&&&&&&&openParentsNode:&function&(GridConfig,&rowid)&{&&
&&&&&&&&&&&&var&currNode&=&$.GridUtils.getCurrentNode(GridConfig,&rowid);&&
&&&&&&&&&&&&currNode.parentId=&&+currNode.parentId;&&
&&&&&&&&&&&&var&parent&=&$(&#&&+&GridConfig.divId).jqGrid('getNodeParent',&currNode);&&
&&&&&&&&&&&&if&(parent&!=&null)&{&&
&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('expandNode',&parent);&&
&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('expandRow',&parent);&&
&&&&&&&&&&&&&&&&$.GridUtils.openParentsNode(GridConfig,&parent.id);&&
&&&&&&&&&&&&}&&
&&&&&&&&},&&
&&&&&&&&getAllChildrenNodes:&function&(GridConfig,&root,&level,&treeList)&{&&
&&&&&&&&&&&&if&(typeof&treeList&==&&undefined&)&{&&
&&&&&&&&&&&&&&&&treeList&=&[];&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&var&chs&=&$(&#&&+&GridConfig.divId).jqGrid('getNodeChildren',&root);&&
&&&&&&&&&&&&treeList[treeList.length]&=&&&
&&&&&&&&&&&&if&(chs&!=&null&&&&chs.length&&&0)&{&&
&&&&&&&&&&&&&&&&for&(var&i&=&0;&i&&&chs.&i++)&{&&
&&&&&&&&&&&&&&&&&&&&$.GridUtils.getAllChildrenNodes(GridConfig,&chs[i],&level&+&1,&treeList);&&
&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&return&treeL&&
&&&&&&&&},&&
&&&&&&&&getNodeParent:&function&(GridConfig,&rowid)&{&&
&&&&&&&&&&&&var&roots&=&$(&#&&+&GridConfig.divId).jqGrid('getRootNodes');&&
&&&&&&&&&&&&var&row&=&$.GridUtils.getRowData(GridConfig,&rowid);&&
&&&&&&&&&&&&for&(var&i&=&0;&i&&&roots.&i++)&{&&
&&&&&&&&&&&&&&&&var&treeList&=&$.GridUtils.getAllChildrenNodes(GridConfig,&roots[i],&0);&&
&&&&&&&&&&&&&&&&for&(j&=&0;&j&&&treeList.&j++)&{&&
&&&&&&&&&&&&&&&&&&&&if&(treeList[j].id&==&row.parentId)&{&&
&&&&&&&&&&&&&&&&&&&&&&&&return&&treeList[j]&&
&&&&&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&return&null;&&
&&&&&&&&},&&
&&&&&&&&getCurrentNode:&function&(GridConfig,&rowid)&{&&
&&&&&&&&&&&&var&roots&=&$(&#&&+&GridConfig.divId).jqGrid('getRootNodes');&&
&&&&&&&&&&&&var&row&=&$.GridUtils.getRowData(GridConfig,&rowid);&&
&&&&&&&&&&&&for&(var&i&=&0;&i&&&roots.&i++)&{&&
&&&&&&&&&&&&&&&&var&treeList&=&$.GridUtils.getAllChildrenNodes(GridConfig,&roots[i],&0);&&
&&&&&&&&&&&&&&&&for&(j&=&0;&j&&&treeList.&j++)&{&&
&&&&&&&&&&&&&&&&&&&&if&(treeList[j].id&==&row.id)&{&&
&&&&&&&&&&&&&&&&&&&&&&&&return&&treeList[j]&&
&&&&&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&return&null;&&
&&&&&&&&},&&
&&&&&&&&getAllChildrenNodesByRowId:&function&(GridConfig,&rowid)&{&&
&&&&&&&&&&&&var&row&=&$.GridUtils.getRowData(GridConfig,&rowid);&&
&&&&&&&&&&&&row._id_&=&row.&&
&&&&&&&&&&&&var&rowList&=&$.GridUtils.getAllChildrenNodes(GridConfig,&row,&row.level);&&
&&&&&&&&&&&&if&(rowList&==&null&||&rowList.length&==&0)&&
&&&&&&&&&&&&&&&&return&rowL&&
&&&&&&&&&&&&if&(rowList&!=&null&&&&rowList.length&&&0)&{&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&rowList[0]&=&$.GridUtils.getCurrentNode(GridConfig,&rowid);&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&return&rowL&&
&&&&&&&&},&&
&&&&&&&&deleteTreeNodeAndChildren:&function&(GridConfig,&rowid)&{&&
&&&&&&&&&&&&var&treeList&=&$.GridUtils.getAllChildrenNodesByRowId(GridConfig,&rowid);&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&for&(var&i&=&treeList.length&-&1;&i&&=&0;&i--)&{&&
&&&&&&&&&&&&&&&&if&(treeList[i]&!=&null)&&
&&&&&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('delTreeNode',&treeList[i].id);&&
&&&&&&&&&&&&}&&
&&&&&&&&},&&
&&&&&&&&moveTreeNode:&function&(GridConfig,&newNodeData)&{&&
&&&&&&&&&&&&if&(typeof(newNodeData.parentId)&==&&undefined&)&{&&
&&&&&&&&&&&&&&&&alert(&没有设定父节点ID&);&&
&&&&&&&&&&&&&&&&return;&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&var&levelPad&=&0;&&&&
&&&&&&&&&&&&var&rowid&=&typeof(newNodeData.rowid)&==&&undefined&&?&newNodeData.id&:&newNodeData.&&
&&&&&&&&&&&&var&newParentId&=&newNodeData.parentId;&&
&&&&&&&&&&&&var&newP&&
&&&&&&&&&&&&var&oldP&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&var&treeList&=&$.GridUtils.getAllChildrenNodesByRowId(GridConfig,&rowid);&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&if&(treeList&!=&null&&&&treeList.length&&&0)&{&&
&&&&&&&&&&&&&&&&newParent&=&$.GridUtils.getCurrentNode(GridConfig,&newParentId);&&
&&&&&&&&&&&&&&&&oldParent&=&$.GridUtils.getCurrentNode(GridConfig,&treeList[0].parentId);&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&if&(newParent&!=&null)&{&&
&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&levelPad&=&newParent.level&-&oldParent.&&
&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&$.GridUtils.deleteTreeNodeAndChildren(GridConfig,&rowid);&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&treeList[0]&=&$.extend(treeList[0],&newNodeData);&&
&&&&&&&&&&&&for&(var&i&=&0;&i&&&treeList.&i++)&{&&
&&&&&&&&&&&&&&&&treeList[i]._id_&=&treeList[i].&&
&&&&&&&&&&&&&&&&treeList[i].loaded&=&true;&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&treeList[i].level&=&treeList[i].level&+&levelP&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('addChildNode',&treeList[i].id,&treeList[i].parentId,&treeList[i]);&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&$.GridUtils.openParentsNode(GridConfig,&treeList[0].id);&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&&&
&&&&&&&&&&&&treeList&=&$.GridUtils.getAllChildrenNodesByRowId(GridConfig,&oldParent.id);&&
&&&&&&&&&&&&if&(treeList&!=&null&&&&treeList.length&==&1)&{&&
&&&&&&&&&&&&&&&&$.GridUtils.deleteTreeNodeAndChildren(GridConfig,&treeList[0].id);&&
&&&&&&&&&&&&&&&&treeList[0]._id_&=&oldParent.&&
&&&&&&&&&&&&&&&&treeList[0].loaded&=&true;&&
&&&&&&&&&&&&&&&&treeList[0].isLeaf&=&true;&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&$(&#&&+&GridConfig.divId).jqGrid('addChildNode',&treeList[0].id,&treeList[0].parentId,&treeList[0]);&&
&&&&&&&&&&&&}&&
&&&&&&&&} &
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:22562次
排名:千里之外
转载:47篇
(1)(1)(1)(1)(1)(5)(7)(5)(6)(18)(6)> jqgrid treegrid demo
JqGridtreegrid树形表格示例,treegrid树形表格,动态加载。
菜单管理功能实现-treegrid行编辑以及拖拽效果。使用easyui的treegrid实现行编辑和拖拽效果。
因项目需求,编写了一个TreeGrid插件,上线后用户反馈了许多体验不好的地方,做此次修改
因项目近期特殊需要,自己实现了一个TreeGrid javascript组件。其中一些思想是从网络借鉴的
前台jqurey代码
function organDatagrid(){
$organ_treegrid
= $(& 39; organ_treegrid& 39;) treegrid({
这个项目用到了EF、WebService、html、jQuery、jQuery UI、jqGrid。前后端分离通过json数据交互,纯A
&span style=&font-family: Arial, Helvetica, sans-&&&%@ page language=&java&
Bootstrap原生的table组件只能满足简单的数据展示,满足不了更富有操作性的要求。当然了,
jqGrid是典型的B S架构,服务器端只是提供数据管理,客户端只提供数据显示。换句话说,jqG
jqGrid 学习笔记整理——终极篇(一)
Bmob移动支付学习Demo,用户需要在Bmob我的控制台中进行实名认证。并创建自己的应用。同时
通过属性反向传值,对于ios开发者来说,反向传值再熟悉不过了。我们通常使用,代理,通
Android 通讯录demo。
Android中软键盘的引出的问题,所做的小Demo。
SSM下整合netty使用队列进行文件传输:自己在闲暇无事的时候做的一些小demo,在这里分享出
1 拿到这个直接网上搜,有好多,但是看了后都觉得不是太复杂就是些不是特别想看的例子
如果您是第一次使用ExtJS的TreeGrid的话,我相信总会有一些小麻烦的,下面就来说一说ExtJS中
为避免重复造轮子,今天简单看了下将jQuery的TreeGrid,现在将其记录如下,希望能够对大家
昨天写了一个ko+easyui的同样的实现,感觉写的太乱,用起来十分麻烦,于是今天照着edatagrid
&script type=&text/javascript&&function formatProgress(value){
if (value){
var s = '&di
jQuery和PHP的JSON交互,如何处理二维数组?从浏览器端的jqGrid中取得的数据是一个二维数组
1:数据库表创建并往中插入200000条数据:复制代码CREATE TABLE [dbo] [T_School](
[ID] [int] IDENTITY(1,1
最近项目决定运用JqGrid列表控件显示相关数据,以前接触比较多还是easyui和Ext Net的列表控
在做一些项目开发时,我们经常会用到表& 26684;控件。用的比较多的是JQGRID 或者easyu
jqGrid 的简介jqgrid 是一个基于jquery 的web 端 table/tree grid 的组件。默认的select 定义方式[javascr
Could not find class ‘Ice InitializationData’, referenced from method com zeroc hello HelloApp initializeCommunicato
Android Studio导入library(第三方库)或者demo的方法。一般情况来说,我们使用studio导入别人
maven项目 spring-boot 整合 mybatis 实现查询功能demo,整个项目的结构。
GreenDao2 x Demo 拓展了一部分数据库升级功能如要了解功能实现,请运行app程序查看控制台日志
GreenDao3 x Demo 拓展了一部分数据库升级功能,如要了解功能实现,请运行app程序查看控制台日
热门文章热门标签
03月17日 |
03月17日 |
03月17日 |
03月17日 |
03月17日 |
03月17日 |
03月17日 |
03月17日 |jqgrid treegrid js-1
jquery easyui中treegrid用法的简单实例_计算机软件及应用_IT/计算机_专业资料。Jquery easyui的treegrid用法 项目需求如下图,在服务端返回的 json 数据中,要经过 ...
grid.tbltogrid.js grid.treegrid.js jqDnR.js jqModal.js jquery.fmatter....json2.js JsonXml.js 从文件结构上看,jqGrid 需要的文件在 /css/ 和 /js/...
jqGrid Table 纯Json自带分页_计算机软件及应用_IT/计算机_专业资料。jqGrid ...} ?? function testclear(){ ?? jQuery(&#list1&).jqGrid('clearGridData...
JQgrid-JSON应用_计算机软件及应用_IT/计算机_专业资料。就介绍了jqGrid 在servlet...(&page&); // 取得当前页数,注意这是 jq grid 自身的参数 String rows = ...
.jqGrid( 'setGridParam', { url : &/jqgrid7/JSONData?nm_mask=& + nm_mask + &&cd_mask=& + cd_mask, page : 1 }).trigger(&reloadGrid&); }...
七:菜单。 前台语法: $(&#treegridlist&).jqGrid({ treeGrid:true, ExpandColumn:'menu', ExpandColClick:true, url:url+&?oper=1&, datatype:'json', ...
jqGrid超详细属性说明(追加整理)_计算机软件及应用_IT/计算机_专业资料。jqGrid超...使用方法:var mygrid = jQuery(”#” +grid_id)[0];var myjsongrid = ...
MVC4 中 EasyUI Tree 异步加载 JSON 数据 生成树 1,首先构造 tree 接受的格式化数据结构 MODEL ///
/// 定义EasyUI树的相关数据,方便控制器生成Json数据进行...
JSON Data JSON String JSON dot notation Array Data Function User Data ...For example: jQuery(&#gridid&).jqGrid({ ... colModel : [ {name:'...
JSON 数据 publicjQGrid(introws,intcurrentPage,inttotalRecord,IList&T&jsonArray...treedatat mixed ype treeGrid treeGrid Model 否否否否否 boolean 启用或者...

我要回帖

更多关于 treegrid row 子节点 的文章

 

随机推荐