jquery easyui Treegrid 暴力修改父节点ID

jquery easyui Treegrid 暴力修改父节点ID

项目页面需要展示组织架构及管理,作为一个前台菜鸟,第一时间 就想到了 easyui 的treegrid。然后在网上下载的API和demo,然后就开始了我的 苦逼 探索之路。

首先在建立treegrid的是API提供了两种新建方式
  1. <table id="tt" class="easyui-treegrid" style="width:600px;height:400px"
  2. data-options="url:'get_data.php',idField:'id',treeField:'name'">
  3. <thead>
  4. <tr>
  5. <th data-options="field:'name',width:180">Task Name</th>
  6. <th data-options="field:'persons',width:60,align:'right'">Persons</th>
  7. <th data-options="field:'begin',width:80">Begin Date</th>
  8. <th data-options="field:'end',width:80">End Date</th>
  9. </tr>
  10. </thead>
  11. </table>
  1. $('#tt').treegrid({
  2. url:'get_data.php',
  3. idField:'id',
  4. treeField:'name',
  5. columns:[[
  6. {title:'Task Name',field:'name',width:180},
  7. {field:'persons',title:'Persons',width:60,align:'right'},
  8. {field:'begin',title:'Begin Date',width:80},
  9. {field:'end',title:'End Date',width:80}
  10. ]]
  11. });
个人感觉第一种新建方式 比较简洁,看着舒服
之后就发现 ,怎么设置我的父类ID
看着API的数据 是这样的
{"total":9,"rows":[
{"id":1,"region":"Wyoming"},
{"id":11,"region":"Albin","f1":2000,"f2":1800,"f3":1903,"f4":2183,"f5":2133,"f6":1923,"f7":2018,"f8":1838,"_parentId":1},
{"id":12,"region":"Canon","f1":2000,"f2":1800,"f3":1903,"f4":2183,"f5":2133,"f6":1923,"f7":2018,"f8":1838,"_parentId":1},
{"id":13,"region":"Egbert","f1":2000,"f2":1800,"f3":1903,"f4":2183,"f5":2133,"f6":1923,"f7":2018,"f8":1838,"_parentId":1},
{"id":2,"region":"Washington"},
{"id":21,"region":"Bellingham","f1":2000,"f2":1800,"f3":1903,"f4":2183,"f5":2133,"f6":1923,"f7":2018,"f8":1838,"_parentId":2},
{"id":22,"region":"Chehalis","f1":2000,"f2":1800,"f3":1903,"f4":2183,"f5":2133,"f6":1923,"f7":2018,"f8":1838,"_parentId":2},
{"id":23,"region":"Ellensburg","f1":2000,"f2":1800,"f3":1903,"f4":2183,"f5":2133,"f6":1923,"f7":2018,"f8":1838,"_parentId":2},
{"id":24,"region":"Monroe","f1":2000,"f2":1800,"f3":1903,"f4":2183,"f5":2133,"f6":1923,"f7":2018,"f8":1838,"_parentId":2}
]
发现API使用的是_parentId 那好我也修改我的 VO 与之保持一致,

但在调试的是发现
String approvalConfigJson=JSON.toJSONString(approvalConfig); approvalConfig为我的VO
List转String的时候 _parentId 字段丢失
查了相关资料发现 import net.sf.json.JSONObject; 在你命名不规范的时候 是不给你转的,还有就是当你的字段为NULL是他也不给你转
怎么办?
只好暴力修改API方法了
然后全局搜_parentId发现
jquery.easyui.min.js 中有相关字段,然后把_parentId的字段修改为自己的字段就OK了。
这样数据有了但是不是数结构。那是为什么呢?
之后又发现一个问题。
根节点不能带parentId,这样子我自己的方法就不能用了
想到JSON.toJSONString()的特性,我把根节点parentId 赋null值 就完美解决了
以上为easyui Treegrid 爬坑过程,希望对你有帮助。

猜你喜欢

转载自blog.csdn.net/xinglinglove/article/details/76107195