jquery中EasyUI实现异步树


Posted in Javascript onMarch 01, 2015

前台使用EasyUI实现 . EasyUI向后台传递一个id参数 .

第一次加载 , 向后台传递的id为null .

之后每次将树节点展开 , 会向后台传递一个当前节点的 id .

Control层 :

 /**

  * tree

  */

 @RequestMapping(value = "/tree.do")

 public void mytree(HttpServletResponse response, String id) {

  this.writeJson(response, bookService.getChildrenTree(id));

 }

Service层 :

 @Transactional

 @Override

 public List<Tree> getChildrenTree(String pid) {

  try {

   List<Tree> result = new ArrayList<Tree>();

   //获得儿子节点的列表

   List<TBookType> childrenList = this.getChildrenType(pid);

   if (childrenList != null && childrenList.size() > 0) {

    for (TBookType child : childrenList) {

     // 获取孙子的个数

     long count = bookDao.getChildrenCount(String.valueOf(child.getId()));

     Tree node = new Tree();

     node.setId(String.valueOf(child.getId()));

     node.setPid(String.valueOf(child.getPid()));

     node.setText(child.getName());

     node.setChildren(null);

     node.setState(count > 0 ? "closed" : "open");

     //将儿子列表childrenList数据逐个存到树当中

     result.add(node);

    }

   }

    return result; 

  } catch (Exception e) {

   throw new BusinessException("获取图书类型数据出现错误!", e);

  }

 }

Dao层 :

 @Override

 public List<TBookType> getChildrenType(String pid) {

 //这个的pid就是当前展开节点的id , 通过父节点的 id 来获得子节点

 StringBuilder sqlstr = new StringBuilder();

  if (StringUtils.isBlank(pid))

   sqlstr.append("select * from booktype bt where bt.pid=0");

  else

   sqlstr.append("select * from booktype bt where bt.pid=" + pid );

  return this.search2(TBookType.class, sqlstr.toString());

 }
 @Override

 public long getChildrenCount(String pid) {

 //这个的pid就是当前展开节点的id , 通过父节点的 id 来获得子节点的个数

  StringBuilder sqlstr = new StringBuilder();

  if (StringUtils.isBlank(pid))

   sqlstr.append("select count(*) from booktype tb where tb.pid='0'");

  else

   sqlstr.append("select count(*) from booktype tb where tb.pid='" + pid + "'");

  return this.count(sqlstr.toString());

 }

 

以上所述就是本文关于EasyUI实现异步树的全部代码了,希望对大家能有所帮助

Javascript 相关文章推荐
固定背景实现的背景滚动特效示例分享
May 19 Javascript
JS实现定时页面弹出类似QQ新闻的提示框
Nov 07 Javascript
使用js解决由border属性引起的div宽度问题
Nov 26 Javascript
JavaScript按值删除数组元素的方法
Apr 24 Javascript
JS实现生成会变大变小的圆环实例
Aug 05 Javascript
ES6概念 Symbol.keyFor()方法
Dec 25 Javascript
详解闭包解决jQuery中AJAX的外部变量问题
Feb 22 Javascript
[js高手之路]从原型链开始图解继承到组合继承的产生详解
Aug 28 Javascript
webpack4.x打包过程详解
Jul 18 Javascript
原生JS实现天气预报
Jun 16 Javascript
如何利用vue实现波谱拟合详解
Nov 05 Javascript
PHP 502bad gateway原因及解决方案
Nov 13 Javascript
jquery中EasyUI实现同步树
Mar 01 #Javascript
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
Mar 01 #Javascript
jquery.uploadify插件在chrome浏览器频繁崩溃解决方法
Mar 01 #Javascript
深入分析Cookie的安全性问题
Mar 01 #Javascript
浅谈JavaScript事件的属性列表
Mar 01 #Javascript
浅析javascript中的DOM
Mar 01 #Javascript
javascript中的正则表达式使用指南
Mar 01 #Javascript
You might like
解析PHP正则提取或替换img标记属性
2013/06/26 PHP
PHP imagegrabscreen和imagegrabwindow(截取网站缩略图)的实例代码
2013/11/07 PHP
thinkphp路由规则使用示例详解和伪静态功能实现(apache重写)
2014/02/24 PHP
PHP  Yii清理缓存的实现方法
2016/11/10 PHP
判断页面是关闭还是刷新的js代码
2007/01/28 Javascript
JavaScript中的apply和call函数详解
2014/07/20 Javascript
jQuery圆形统计图开发实例
2015/01/04 Javascript
js图片翻书效果代码分享
2015/08/20 Javascript
jQuery实现TAB选项卡切换特效简单演示
2016/03/04 Javascript
ES6记录异步函数的执行时间详解
2016/08/31 Javascript
深入理解bootstrap框架之入门准备
2016/10/09 Javascript
详解angularjs中的隔离作用域理解以及绑定策略
2017/05/31 Javascript
jQuery图片查看插件Magnify开发详解
2017/12/25 jQuery
JS监听事件的叠加和移除功能
2018/11/19 Javascript
extract-text-webpack-plugin用法详解
2019/02/14 Javascript
vue-router源码之history类的浅析
2019/05/21 Javascript
js实现贪吃蛇小游戏
2019/10/29 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
Vue 列表页带参数进详情页的操作(router-link)
2020/11/13 Javascript
让python 3支持mysqldb的解决方法
2017/02/14 Python
python的debug实用工具 pdb详解
2019/07/12 Python
Python使用贪婪算法解决问题
2019/10/22 Python
python图形开发GUI库pyqt5的详细使用方法及各控件的属性与方法
2020/02/14 Python
Pyinstaller 打包发布经验总结
2020/06/02 Python
python绘制趋势图的示例
2020/09/17 Python
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
英国排名第一的在线宠物用品商店:Monster Pet Supplies
2018/05/20 全球购物
马来西亚在线药房:RoyalePharma
2019/12/01 全球购物
上海微创软件面试题
2012/06/14 面试题
外贸业务员求职自荐信分享
2013/09/21 职场文书
最新大学生自我评价
2013/09/24 职场文书
董事长秘书岗位职责
2015/02/13 职场文书
党员干部廉政承诺书
2015/04/28 职场文书
工资证明格式模板
2015/06/12 职场文书
签证扫盲贴,41个常见签证知识,需要的拿走
2019/08/09 职场文书
Python 批量下载阴阳师网站壁纸
2021/05/19 Python