加载数据

  1. $('#treeul').tree({
  2. checkbox:true,
  3. url:'initTree.aspx',
  4. onLoadSuccess:function(){
  5. //绑定权限
  6. $.ajax({
  7. url:'getId.aspx?id='+v,
  8. cache:false,
  9. dataType:'text',
  10. success:function(data){
  11. var array = data.split(',');
  12. for(var i=0;i<array.length;i++)
  13. {
  14. var node = $('#treeul').tree('find',array[i]);
  15. $('#treeul').tree('check',node.target);
  16. }
  17. }
  18. })
  19. }
  20. });

cache必须设置为false,意思为不缓存当前页,否则更改权限后绑定的权限还是上一次的操作结果.

dataType表示获取服务器发送的数据,"text"表示纯文本

保存选中的节点

  1. $('#savebtn').click(function(){
  2. $.ajax({
  3. url:'nodeHandler.ashx?pnodes='+GetNode('fnode')+ '&cnodes='+GetNode('child') +'&id='+v,
  4. cache:false,
  5. success:function(data){
  6. eval('data='+data);
  7. if(data.success){
  8. alert('保存成功');
  9. window.location.href='Permission.aspx';
  10. }
  11. }
  12. })
  13. });

保存的时候,也必须将cache设置为false

GetNode方法

参数代表:父节点或子节点

  1. function GetNode(type){
  2. var node = $('#treeul').tree('getChecked');
  3. var cnodes='';
  4. var pnodes='';
  5. var prevNode=''; //保存上一步所选父节点
  6. for(var i=0;i<node.length;i++){
  7. if($('#treeul').tree('isLeaf',node[i].target)){
  8. cnodes+=node[i].id+',';
  9. var pnode = $('#treeul').tree('getParent',node[i].target); //获取当前节点的父节点
  10. if(prevNode!=pnode.id) //保证当前父节点与上一次父节点不同
  11. {
  12. pnodes+=pnode.id+',';
  13. prevNode = pnode.id; //保存当前节点
  14. }
  15. }
  16. }
  17. cnodes = cnodes.substring(0,cnodes.length-1);
  18. pnodes = pnodes.substring(0,pnodes.length-1);
  19. if(type=='child'){return cnodes;}
  20. else{return pnodes};
  21. };

绑定tree的时候,只需要绑定子节点就可以了,父节点是根据子节点的状态决定是否选中的。一个父节点有2个子节点,如果我只绑定一个子节点,那么父节点的选择状态就不是“√”,如果2个子节点都有绑定的话,那么父节点的选中状态就是"√"

easyui tree使用方法的更多相关文章

  1. Easyui Tree方法扩展 - getLevel(获取节点级别)

    Easyui Tree一直就没有提供这个方法,以前没有用到,所以一直没怎么在意,这次自己用到了,顺便扩展了一个方法,分享给大家. $.extend($.fn.tree.methods, { getLe ...

  2. easyui tree扩展tree方法获取目标节点的一级子节点

    Easyui tree扩展tree方法获取目标节点的一级子节点 /* 只返回目标节点的第一级子节点,具体的用法和getChildren方法是一样的 */ $.extend($.fn.tree.meth ...

  3. 转载 Easyui Tree方法扩展 - getLevel(获取节点级别)

    Easyui Tree一直就没有提供这个方法,以前没有用到,所 以一直没怎么在意,这次自己用到了,顺便扩展了一个方法,分享给大家. $.extend($.fn.tree.methods, { getL ...

  4. [转]easyui tree 模仿ztree 使用扁平化加载json

    原文地址:http://my.oschina.net/acitiviti/blog/349377 参考文章:http://www.jeasyuicn.com/demo/treeloadfilter.h ...

  5. Jquery easyui tree的使用

    这个ui用的一切都是json数据.树也是如此! 后台需要返回与格式匹配的json数据才能正确加载树. 页面定义一个ui: <ul id="messageInfoAddTree" ...

  6. EasyUI Tree判断节点是否是叶

    方法1:  $('#domaincatalog').tree('isLeaf', node.target); 返回true或false ,true表示是叶节点, false即不是 方法2:官方文档中: ...

  7. EasyUI –tree、combotree学习总结

    EasyUI –tree.combotree学习总结 一.   tree总结 (一).tree基本使用 tree控件是web页面中将数据分层一树形结构显示的. 使用$.fn.tree.defaults ...

  8. Easyui tree 开启拖放后 在IE下 性能惨不忍睹

    项目中加载一个树结构代码如下 //加载树 function LoadTree() { var url = "../Ajax/StationTree.ashx?showVirtual=1&qu ...

  9. easyui tree 的数据格式转换

    一般用来储存树数据的数据库表都含有两个整型字段:id pid,所以我们查询出来的List一般是这样的(约定pId为-1的节点为根节点): var serverList = [ {id : 2,pid ...

随机推荐

  1. ThinkPad 禁用 触摸板

    执行 xinput wowk@wowk:~$ xinput ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTES ...

  2. MFC中获取系统当前时间

    1.使用CTime类 CString str; //获取系统时间 CTime tm; tm=CTime::GetCurrentTime(); str=tm.Format("现在时间是%Y年% ...

  3. OpenCV:二值图像连通区域分析与标记算法实现

    http://blog.csdn.net/cooelf/article/details/26581539?utm_source=tuicool&utm_medium=referral Open ...

  4. 通过C++修改系统时间代码

    #include <windows.h>#include <stdio.h>#include <iostream>using namespace std;int m ...

  5. override the hashcode and equals method in java

    http://howtodoinjava.com/2012/10/09/working-with-hashcode-and-equals-methods-in-java/

  6. 修改一个Label上字体的大小(富文本)

    假如修改上面的Label上价格30000的大小,那么需要用到富文本 上代码 // 字符串30000 NSString * priceNumber = @"30000"; [pric ...

  7. Xcode6无法用xib得问题解决方法

    1.创建一个新工程,选择singleView application 2.将storyboard和launchscreen删除,选择moveToTrash 3.删除info.plist文件中Main ...

  8. 多个dropdownlist只有第一个能选中,其他选不中之我见

    前段时间遇到这个问题,发现在页面中的源代码已经显示selected=“selected" 可是还是选中的第一项,试过很多办法,都不行,最后只好靠js来解决了,获取所有的dropdownlis ...

  9. js连续赋值、指针

    jq的源码中有很多连续赋值,类似这样的: var a = {n:1}; var b = a; // 持有a,以回查 a.x = a = {n:2}; alert(a.x);// --> unde ...

  10. iptables-1.4.19 移植到linux

    ------------------------------------------------------------------------------------------ https://g ...