感觉easyUi 的树用起来不如 Ext 的树方便,首先,root节点不太好自定义,

异步加载时,只能通过后台判断生成root节点,但是这样一来有一个问题,就是第一次访问界面时,

树的初始化比较慢,大概会有一秒左右的时间,树是空白的,虽然只有一秒左右的时间,但是对于我来说是没有办法容忍的,所以,我是用 ajax 的方法通过append 将子节点加入进去,然后展开所有节点,并且默认选择第一个子节点

下面是 js 代码

			$(document).ready(function(){
$("#tree").tree({
data: [{
text: '主目录',
state: 'closed'
}],
onSelect: function(selectNode){
console.log("select: " + selectNode.id);
}
}); $.ajax({
type : "POST",
dataType : "json",
url : "testAction_loadTree",
success : function(data){
var rootNode = $("#tree").tree('getRoot');
/* 向root添加子节点 */
$("#tree").tree('append',{
parent: rootNode.target,
data: data
}); /* 展开所有节点 */
$("#tree").tree('expandAll'); var children = $("#tree").tree('getChildren',rootNode.target); /* 选中第一个子节点 */
$("#tree").tree("select",children[0].target);
}
});
});

ajax 通过后台传递的json数据格式为:

[{"id":"D:\\lucene\\file5\\index","state":"open","text":"D:\\lucene\\file5\\index"},{"id":"D:\\lucene\\file5\\indexwa","state":"open","text":"D:\\lucene\\file5\\indexwa"},{"id":"D:\\lucene\\file5\\index_tmp","state":"open","text":"D:\\lucene\\file5\\index_tmp"},{"id":"D:\\lucene\\file5\\spider","state":"open","text":"D:\\lucene\\file5\\spider"}]

json 是通过fastJson 这个开源的java 工具实现的,挺好用的,在此推荐一下

jquery EasyUi 添加节点、展开所有节点、默认选中第一个节点的更多相关文章

  1. jQuery设置 select、radio、checkbox 默认选中的值

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. Easyui combobox如何默认选中第一项???

    以下代码可以实现combobox默认选中第一项,在实际开发中我们可能会用到! // 处理combobox默认选中的问题 <input id="user_type" class ...

  3. easyui的combobox默认选中第一个选项

    pmProjectSelect.combobox({ editable:false, width:165, url : ctx + '/PmProject/findByProjectMgr', //c ...

  4. vue父路由默认选中第一个子路由,切换子路由让父路由高亮不会消失

    vue父路由默认选中第一个子路由,切换子路由让父路由高亮不会消失 正常默认会有 .router-active-class 识别高亮 达到以上注意: 1. exact 不要加 注意是不要加,exact ...

  5. 【WPF】ListBox使用DataTemplate 以及默认选中第一项Item

    ListBox中DataTemplate的用法如下 . <ListBox x:Name="areaLB" ItemsSource="{Binding AreaNum ...

  6. jquery easyui添加图标扩展

    easyui中有很多通过iconCls="icon-reload"这样的属性引入小图标显示,当然我们也可以自己添加自己的小图标. 方式:1.我们可以在jquery easyui的文 ...

  7. 给jquery easy-ui 添加右键菜单

    版权声明:转自为EasyUI 的Tab 标签添加右键菜单

  8. easyui tree 默认选中第一个元素

    系统采用ajax异步调用后端接口做数据呈现,有个场景就是加载的树形菜单默认选中第一行,网上有人分享的解决方案能实现效果(http://aokunsang.iteye.com/blog/1489204) ...

  9. Jquery EasyUI环境下设置下拉框选中指定选项

    前提: 要求点击某个按钮就将所有的下拉框都设置为选中第一个选项,因此,指定索引是最好的做法 尝试过的做法: html代码如下(easyui 的写法) <select class="ea ...

随机推荐

  1. strcpy strlen 实现

    1. strcpy:字符串拷贝函数,无边界,一直拷贝到字符串结束符 '\0' 为止. char* strcpy(char* strDest, const char* strSrc); 代码实现: #i ...

  2. mysql的数据存储

    # pycharm 连接mysql import pymysql username = input("输入用户名:") pwd = input("输入密码:") ...

  3. c++2的幂次方

    c++2的幂次方 题目描述 任何一个正整数都可以用2的幂次方表示. 同时约定用括号来表示方次,即a的b次,可以表示为a(b). 由此可知,137可以表示为: 2(7)+2(3)+2(0) 进一步: ...

  4. 统计greenplum_postgresql数据占用存储情况

    1. 场景描述 因项目数据量略大,每天大概有几百g的存储需求,并且是多项目公用greenplum集群,需要定期检查一下磁盘情况. 2. 解决方案 2.1 按用户/项目统计 2.1.1 SQL语句 SE ...

  5. Bzoj 1537: [POI2005]Aut- The Bus 题解 [由暴力到正解]

    1537: [POI2005]Aut- The Bus Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 387  Solved: 264[Submit][S ...

  6. WinForm控件之【DateTimePicker】

    基本介绍 时间控件应用较为广泛,属性设置项也比较完善是非常好用的控件. 常设置属性.事件 CustomFormat:当Format属性设置为自定义类型时可自定义控件时间的显示格式: Enabled:指 ...

  7. CitusDB Multi-node Install and Test

    Multi-node setup on CentOS 参考官网:https://docs.citusdata.com/en/v6.2/installation/production_rhel.html ...

  8. SpringBoot开发案例Nacos配置管理中心

    前言 在开发过程中,通常我们会配置一些参数来实现某些功能,比如是否开启某项服务,告警邮件配置等等.一般会通过硬编码.配置文件或者数据库的形式实现. 那么问题来了,如何更加优雅的实现?欢迎来到 Naco ...

  9. 个人永久性免费-Excel催化剂功能第49波-标准数据结构表转报表样式结果

    中国的企业信息化,已经过去了20年,企业里也产生了大量的数据,IT技术的信息化管理辅助企业经营管理也已经得到广泛地认同,现在就连一个小卖部都可以有收银系统这样的信息化管理介入.但同时也有一个很现实的问 ...

  10. HelloDjango 启动!免费带你学Django全栈!

    欢迎 追梦 入伙 HelloGitHub-Team,同时为我们带来了完全免费的 HelloDjango 系列教程,全网首发于 HelloGitHub 公众号.让想你的系列文章被跟多人看到,那就来加入我 ...