easyui treeGrid实现树形列表(展开不展开)

在easyui框架中,当你须要加载树形列表的时候,须要用到treeGrid来实现它。框架

在table中ui

    须要将class定义为 class="easyui-treegrid"  url

    在data-options里面,设置好url,也就是你要查询的后台连接;在给它一个loadFilter事件   loadFilter:questiontype.loadFilter,这时候,在你加载表格的时候,它会执行js里面的loadFilter方法。 这个方法才是树形列表的核心blog

 

 

loadFilter : function(data,parent){事件

  //data是后台传过来的数据  是easyui通用格式 下面包含total(数据总数),rows(数据)io

  var rows = data.rows;(获取全部的数据)table

  var datas =[];function

  for(var i=0;i<rows.length;i++){class

    var obj = rows[i];//获取当前的数据后台

    obj._parentId = obj.pId; //将获取的id给_parentId 赋值

    data.push(obj);

  }

  data.rows = datas;

  return data;

}

 

这样就造成了你须要的树形表格了,可是他是默认展开的。若是你想默认不展开,只显示一级分类的话,只须要添加state,而且将state属性设置为“closed”就行了

loadFilter : function(data,parent){

  //data是后台传过来的数据  是easyui通用格式 下面包含total(数据总数),rows(数据)

  var rows = data.rows;(获取全部的数据)

  var datas =[];

  for(var i=0;i<rows.length;i++){

    var obj = rows[i];//获取当前的数据

    obj.state="closed";  //将树形列表设置为默认不展开。若是你想展开二级,三级不展开,只须要加判断就行  判断rows里面你的分类level(第几级分类)

    obj._parentId = obj.pId; //将获取的id给_parentId 赋值

    data.push(obj);

  }

  data.rows = datas;

  return data;

}

 

 

 

相关文章
相关标签/搜索