详解Jquery EasyUI tree 的异步加载(遍历指定文件夹,根据文件夹内的文件生成tree)

作者:袖梨 2022-06-25

Jquery EasyUI tree 的异步加载(遍历指定文件夹,根据文件夹内的文件生成tree)具体代码如下:

代码如下 复制代码

privatevoidSMT(HttpContext context)

{

stringSqlConnection82 = System.Configuration.ConfigurationManager.AppSettings["LocalConnectionString"];

stringpath = context.Server.MapPath(@"~/CISWeb/SMT_SOP");

stringid =string.Empty;

List filesNameList = getFiles(path);

if(filesNameList.Count > 0)

context.Response.Write(ListToJson(filesNameList,id));

else

{

context.Response.Write("0");

}

}

///

/// 范围指定目录下的 文件夹/文件 数量

///

///

///

privatestaticList getFiles(stringpath)

{

DirectoryInfo SMT_SOP =newDirectoryInfo(path);

List allFileList =newList();

DirectoryInfo[] allDir = SMT_SOP.GetDirectories();//获取文件夹数量

foreach(DirectoryInfo dinallDir)

{

allFileList.Add("0|"+ d.Name);

}

FileInfo[] allFile = SMT_SOP.GetFiles();//获取文件数量

foreach(FileInfo fiinallFile)

{

allFileList.Add("1|"+ fi.Name);

}

returnallFileList;

}

///

/// 遍历指定文件夹,根据文件夹内的文件返回JSON

///

///

/// 第一次调用这个方法的时候,id=""

///

publicstringListToJson(List filesNameList,stringid)

{

StringBuilder sb2 =newStringBuilder();

sb2.Append("[");

for(inti = 0; i

{

if(filesNameList[i].ToString().Split('|')[0] =="0")

{

sb2.Append("{ "id":"+id+ (i + 1).ToString() +","text":""+ filesNameList[i].ToString().Split('|')[1] +"","state":"closed","children": [");

sb2.Append("]},");

}

else

{

sb2.Append("{"id":"+id + (i + 1).ToString() +","text":""+ String.Format(filesNameList[i].ToString().Split('|')[1]) +""},");

}

}

sb2.Remove(sb2.Length - 1, 1);

sb2.Append("]");

returnsb2.ToString();

}

前台

代码如下 复制代码

$.ajax({

type:"post",

url:"../../ajax/Handler.ashx?action=SMT",

data: {},

success:function(result) {

$("#menuDiv").dialog("open");//jQuery UI中的模态窗口

vartreeData = eval(result);

$("#tt").tree({

data: treeData})

}

})

相关文章

精彩推荐