langmnm 发表于 2013-2-7 19:19:41

easyui tree checkbox tree-hit

文笔不好,部分代码.只为笔记用!
主要功能: 单击条目可选中对应的checkbox,单击非末节点展开/合并.
$(function() {$('body').layout();$('#tree').tree({url : '<%=doName%>?active=<%=active%>',checkbox:true,onClick:function(node){// 单击展开/合并var hit = $(node.target).children("span.tree-hit");if (hit.hasClass("tree-collapsed")) {hit.removeClass("tree-collapsed").addClass("tree-expanded");hit.next().addClass('tree-folder-open');var ul = $(node.target).next();ul.css('display','block');} else if (hit.hasClass("tree-expanded")) {hit.removeClass("tree-expanded").addClass("tree-collapsed");hit.next().removeClass('tree-folder-open');var ul = $(node.target).next();ul.css('display','none');} else {//单击选中checkboxvar checkbox = $(node.target).children("span.tree-checkbox");if(checkbox.hasClass("tree-checkbox0")) {checkbox.removeClass("tree-checkbox0").addClass("tree-checkbox1");} else {checkbox.removeClass("tree-checkbox1").addClass("tree-checkbox0");}}},//数据加载完成后对数据进行处理    onLoadSuccess:function(){    getChecked();    }});});function getChecked(){ //循环判断 var nodes = $('.tree-node');//树形div的class if(nodes.length>0) //过滤第一次加载时没有数据 {       var u_id = "<%=oI%>".split(",");    $('.tree-node').each(function(i){    var node_id = $(this).attr("node-id");//树形div中node-id,其中保存的是数据的ID    if(u_id !="null"|| u_id != null || u_id !="" || u_id != "undefined"){    for(var i=0; i < u_id.length; i++) {    if(node_id == u_id) {      //$(this).addClass("tree-node-selected");//修改class为选定状态      //var node = $('#tree').tree('find',u_id);       $(this).children(".tree-checkbox").addClass("tree-checkbox1");    }    }}});    }}function process(){// 获取所有树节点var node = $('#tree').tree('getChecked');var nodes = "";for(var i=0;i<node.length;i++){// 树节点IDnodes += "'" + node.id + "'" + ",";}   nodes = nodes.substring(0,nodes.length-1);var map = new Map();            map.put("active", "GETFJD");            map.put("Ug_id", nodes);AjaxSend("<%=sysPath%>/PT_FX_FAX.do", "json", map,delNode); }// 实现同步传输,服务器响应完毕后继续向下执行function AjaxSend(url, wdataType, data,successFunction) {    wdataType = wdataType==""?"Intelligent Guess":wdataType;    $.ajax({      url:url,      type:'POST',      dataType:wdataType,      async:false,//-----      data: data.Objects(),      beforeSend:function(){            jBeforeSend()      },      complete :function(){            jCompleted()      },      error:function(event){            jError(event)      },      success:function(event){            jSuccess(event,successFunction)      }    });}

<div id="dataShow" region="center" border="false" style="overflow: auto">      <ul id="tree" style="padding:20px"></ul></div>
页: [1]
查看完整版本: easyui tree checkbox tree-hit