加载数据

  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. 五种JSP页面跳转方法详解

    1. RequestDispatcher.forward() 是在服务器端起作用,当使用forward()时,Servlet engine传递HTTP请求从当前的Servlet or JSP到另外一个 ...

  2. VBS基础篇 - 循环语句(4) - For Each...Next

    VBS基础篇 - 循环语句(4) - For Each...Next   For Each...Next 循环与 For...Next 循环类似.For Each...Next 不是将语句运行指定的次 ...

  3. 《JS权威指南学习总结--第四章4.9.1相等和严格相等》

    内容要点:       一. 严格相等运算符"==="  首先计算其操作数的值,然后比较这两个值,比较过程没有任何类型转换:            1.如果两个值类型不同,则它们不 ...

  4. C++之文件输入输出

    在这里遇见不少的问题,其中的路径问题就是在windows中,\\转义字符才能准确的表示路径 #include <iostream> #include <fstream> #in ...

  5. Git add和commit步骤分析

    修改后或者添加新的文件,执行add命令后,首先它会先存入本地库的暂存区, add可以上传很多个文件,然后执行commit命令后,都会被提交到默认的分支 Master分支上.只有文件更改和文件新建,都可 ...

  6. Angularjs Directive(指令)机制

    转:http://damoqiongqiu.iteye.com/blog/1917971 1.一点小说明 指令的作用:实现语义化标签 我们常用的HTML标签是这样的: <div> < ...

  7. 自定义AccessDeniedHandler

    在Spring默认的AccessDeniedHandler中只有对页面请求的处理,而没有对Ajax的处理.而在项目开发是Ajax又是我们要常用的技术,所以我们可以通过自定义AccessDeniedHa ...

  8. SQL截取字符串

    SUBSTRING 返回字符.binary.text      或      image      表达式的一部分.有关可与该函数一起使用的有效      Microsoft®      SQL    ...

  9. Java学习笔记之I/O流(读取压缩文件以及压缩文件)

    1.读取压缩文件:ZipInputStream 借助ZipFile类的getInputStream方法得到压缩文件的指定项的内容,然后传递给InputStreamReader类的构造方法,返回给Buf ...

  10. OpenLayer 3 鹰眼控件和全屏显示

    <body> <div id="map"></div> <script> var map=new ol.Map({ target:& ...