Jquery EasyUI tree 的异步加载(遍历指定文件夹,根据文件夹内的文件生成tree)
private void SMT(HttpContext context)
{
string SqlConnection82 = System.Configuration.ConfigurationManager.AppSettings["LocalConnectionString"];
string path = context.Server.MapPath(@"~/CISWeb/SMT_SOP");
string id = string.Empty;
List<string> filesNameList = getFiles(path);
if (filesNameList.Count > )
context.Response.Write(ListToJson(filesNameList,id));
else
{
context.Response.Write("");
}
}
/// <summary>
/// 范围指定目录下的 文件夹/文件 数量
/// </summary>
/// <param name="path"></param>
/// <returns></returns>
private static List<string> getFiles(string path)
{
DirectoryInfo SMT_SOP = new DirectoryInfo(path);
List<string> allFileList = new List<string>();
DirectoryInfo[] allDir = SMT_SOP.GetDirectories();//获取文件夹数量
foreach (DirectoryInfo d in allDir)
{
allFileList.Add("0|" + d.Name);
}
FileInfo[] allFile = SMT_SOP.GetFiles();//获取文件数量
foreach (FileInfo fi in allFile)
{
allFileList.Add("1|" + fi.Name);
}
return allFileList;
}
/// <summary>
/// 遍历指定文件夹,根据文件夹内的文件返回JSON
/// </summary>
/// <param name="filesNameList"></param>
/// <param name="id">第一次调用这个方法的时候,id=""</param>
/// <returns></returns>
public string ListToJson(List<string> filesNameList,string id)
{
StringBuilder sb2 = new StringBuilder();
sb2.Append("[");
for (int i = ; i < filesNameList.Count; i++)
{
if (filesNameList[i].ToString().Split('|')[] == "")
{
sb2.Append("{ \"id\":" +id+ (i + ).ToString() + ",\"text\":\"" + filesNameList[i].ToString().Split('|')[] + "\",\"state\":\"closed\",\"children\": [");
sb2.Append("]},");
}
else
{
sb2.Append("{\"id\":"+id + (i + ).ToString() + ",\"text\":\"" + String.Format(filesNameList[i].ToString().Split('|')[]) + "\"},");
} }
sb2.Remove(sb2.Length - , );
sb2.Append("]");
return sb2.ToString();
}
前台
$.ajax({
type: "post",
url: "../../ajax/Handler.ashx?action=SMT",
data: {},
success: function (result) {
$("#menuDiv").dialog("open");//jQuery UI中的模态窗口
var treeData = eval(result);
$("#tt").tree({
data: treeData})
}
})
前台代码是部分代码,可能会有符号缺失
Jquery EasyUI tree 的异步加载(遍历指定文件夹,根据文件夹内的文件生成tree)的更多相关文章
- jquery easyui easyui-treegrid 使用异步加载数据
jquery easyui easyui-treegrid 使用异步加载数据 jquery easyui easyui-treegrid 异步请求 >>>>>>&g ...
- 【EasyUI学习-2】Easyui Tree的异步加载
作者:ssslinppp 1. 摘要 2. tree的相关介绍 3. 异步加载tree数据,并实现tree的折叠展开 3.1 功能说明: 3.2 前台代码 3.3 后台代码 4. 其他 1 ...
- jQuery.treetable使用及异步加载
Usage 1 GitHub 地址 https://github.com/ludo/jquery-treetable/ 2 API 地址 http://ludo.cubicphuse.nl/jquer ...
- Jquery EasyUI Treegrid按需加载子集
项目说明,要一个有权限并且按需加载的树形列表. jeasyui网址 CSS <!--添加树状控件--> <link rel="stylesheet" type=& ...
- jQuery easyui datagrid 的数据加载
其实easyuidatagrid加载数据只有两种方式:一种是ajax加载目标url返回的json数据:另一种是加载js对象,也就是使用loadDate方法,这种方法用于加载本地js数据(非ur ...
- jQuery+Ajax滚屏异步加载数据实现(附源码)
一.CSS样式 body { font:12px/1.0em Microsoft Yahei; line-height:1.6em; background:#fff; line-height:1.2e ...
- jquery load(URL,FUNCTION(){}) 异步加载页面
$("#btnSearch").click(function () { var queryUrl = '/Report/LoadInsClassifFileNew'; if ($( ...
- jquery easyui:tab自动加载第一个tab内容
$('#resourceTabs').tabs('unselect', 0);$('#resourceTabs').tabs('select', 0);
- easyui datagrid 异步加载数据时滚动条有时会自动滚到最底部的问题
在使用easyui 的datagrid异步加载数据时发现滚动条有时会自动滚到最底部.经测试发现,如果加载数据前没有选中行则不会出现这个问题.这样我们可以在重新异步加载数据前取消选中行就可以避免这个问题 ...
随机推荐
- 086、一张表搞定各种Docker监控方案(2019-05-08 周三)
参考https://www.cnblogs.com/CloudMan6/p/7736176.html 前面已经学习了 ps/top/stats.Sysdig.Weave Scope .cAdvi ...
- nginx服务报403错误的解决方法
1.可能是文件权限问题,看一下网站所在的文件夹权限,用户组和用户名是否属于www:www,因为nginx.conf顶头写的是user www:www
- 人工智能AI从入门到精通所有视频教程(140G)以及数据资料免费拿
包含了人工智能AI从入门到精通所有视频教程(140G). 资料获取方式,关注公总号RaoRao1994,查看往期精彩-所有文章,即可获取资源下载链接 更多资源获取,请关注公总号RaoRao1994
- laravel5.8 Models
<?php namespace App\Models; use Illuminate\Notifications\Notifiable;use Illuminate\Contracts\Auth ...
- Laravel-admin 加载视图后,blade 模板 JS 失效
laravel-admin js无法解析 解决 在不需要使用 pjax 的地方使用 Admin::disablePjax();
- 点亮指路灯led
为什么要使用LED? (bootloader,kernel)开发初期,由于串口等硬件尚未被初始化,因此调试手段相当有限,这时通常会采用LED来做为程序调试的重要手段. LED驱动设计: 1.设置GPI ...
- 如何替换B字段内包含A字段的那部分内容
Customer表A字段 varchar(50) 内容(客户姓名)B字段 varchar(1000) 内容(其他字符...客户姓名...其他字符)需要达到效果:将B字段中的客户姓名替换 ...
- Spring的DI和AOP
Spring 为了降低Java开发的复杂性,Spring采取了以下4种关键策略:* 基于POJO的轻量级和最小入侵性编程:* 通过依赖注入和面向接口实现松耦合:* 基于切面和惯例进行声明式编程:* 通 ...
- 【leetcode database】Human Traffic of Stadium
X city built a new stadium, each day many people visit it and the stats are saved as these columns: ...
- JavaWeb面试篇(7)
61,JDBC访问数据库的基本步骤是什么?1,加载驱动2,通过DriverManager对象获取连接对象Connection3,通过连接对象获取会话4,通过会话进行数据的增删改查,封装对象5,关闭资源 ...