基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合

前端之家收集整理的这篇文章主要介绍了基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在上篇给大家介绍了

这种方式其实还是利用list集合的方式传给前台,只不过在前台做了一些小小的变化,而控制器代码也进行了部分的优化,值的一提的是:没用的ajax前后台交互舍弃掉了。

控制器代码如下:

DInfo = new List(); /// /// TreeView视图 /// /// public ActionResult May(string TypeCode) { ViewBag.TypeCode = TypeCode; List DInfo = dbll.GetModelList("TypeCode=" + TypeCode); List list = GetChildNodes(0,new NodeModel() { },DInfo).nodes; ViewBag.data = list; } /// /// GetChildNodes方法,此方法使用递归 /// /// /// public NodeModel GetChildNodes(int parentId,NodeModel childnodestr,List DInfo) { List DictionaryList = DInfo.Where(e => Convert.ToInt32(e.ParentId) == parentId).ToList(); for (int i = 0; i < DictionaryList.Count; i++) { NodeModel NewNode = new NodeModel(); NewNode.DicId = DictionaryList[i].DicId; NewNode.text = DictionaryList[i].DICName; NewNode.ParentId = DictionaryList[i].ParentId; childnodestr.nodes.Add(NewNode); GetChildNodes(NewNode.DicId,NewNode,DInfo); } return childnodestr; }

PS:不再是三个方法而简化为两个方法(几乎没什么变动)。

前台代码如下:

PS:这里用到了.NET 下开源的json格式序列号和反序列化的类库

下面介绍json序列化和反序列化的两个重要方法

JsonConvert.SerializeObject(object value)序列化,

它有个重载方法JsonConvert.SerializeObject(object value,params JsonConverter[] converters)。

JsonConvert.DeserializeObject(string value,Type type),反序列化,

它有个重载方法JsonConvert.DeserializeObject(string value,Type type,params JsonConverter[] converters)

这两个方法可以实现基本的序列化和反序列化要求。

js中的replace的作用是将特定的符号替换为自己需要的符号。

而这里replace(/\/g,'"')的作用是把所有的 / 都替换为“(因为页面需要的是json字符串)。

这样的话 我们的页面就可以读取数据进行显示了。BZ还是感觉这种方式更好一点。

以上所述是小编给大家介绍的基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合。编程之家 jb51.cc 收集整理的教程希望能对你有所帮助,如果觉得编程之家不错,可分享给好友!感谢支持

原文链接:https://www.f2er.com/jquery/46637.html

猜你在找的jQuery相关文章