Ztree可以去官网去下载相应的版本和API,我这里就简单的介绍下它的实现以及因为Ztree的小例子印发的Js问题,稍后我会在博客中写JS的异步问题,
我这里用的是MVC4.0,好了正文开始,上代码
namespace ZtreeDemo.Controllers{ public class HomeController : Controller { // // GET: /Home/ public ActionResult Index() { return View(); } public ActionResult Edit() { var list = GetData(); return Json(list, JsonRequestBehavior.AllowGet); } [NonAction] public ListGetData() { List tree = new List (); tree.Add(new Tree { id = 1, pId = 0, name = "蔬菜", icon = "../Script/css/zTreeStyle/img/diy/1_open.png" }); tree.Add(new Tree { id = 2, pId = 0, name = "动物", icon = "../Script/css/zTreeStyle/img/diy/1_open.png" }); tree.Add(new Tree { id = 3, pId = 0, name = "人类", icon = "../Script/css/zTreeStyle/img/diy/1_open.png" }); tree.Add(new Tree { id = 4, pId = 1, name = "茄子", icon = "../Script/css/zTreeStyle/img/diy/1_open.png" }); return tree; } } public class Tree { public int id { get; set; } public int pId { get; set; } public string name { get; set; } public string icon { get; set; } }}
这里我就不在解释了,类等我都没去规划,直接在这里写了,比较方便。接下来是视图代码,视图上我用的是ajax获取数据,
@{ Layout = null;}ZTREE DEMO - Custom Icon 自定义图标 -- icon 属性
[ 文件路径: core/custom_icon.html ]
1、setting 配置信息说明
- 自定义图标不需要对 setting 进行特殊配置
2、treeNode 节点数据说明
- 利用 节点数据的 icon / iconOpen / iconClose 属性实现自定义图标
- 详细请参见 API 文档中的相关内容
3、其他说明
- 由于时间关系,例子直接采用 png 图片,如果需要解决 ie6 下 png 图片的透明问题,请针对 ie6 制作特殊的 gif 图片或者利用 css filter 解决
好了,这就是一个简单的树形菜单,我之前没用过Ztree,因为明天不用上班,就研究学习下,这只是个入门级的,有时间的话我会规整下Ztree返回Json对应数据格式的通用方法以及扩展Ztree的其他比较好的功能通用方法给大家,基本的效果如下:
稍后我会写下关于Ztree引发的Js异步的问题文章地址