在开发过程中瞒免不了会用到多级菜单的使用,在某些场合中,我们会需要动态的获取到多级菜单的数据,在不知道自己的菜单究竟有几级的情况下怎样进行菜单的展示呢?

  在对这个需求进行分析的时候会发现,我的菜单数据是一个json格式的一个数据,我的当前的菜单可能包含下一级菜单的内容,那么我就可以把每一个有下一级菜单的当做一个菜单,判断如果有下一级菜单的情况下就在对下一级菜单进行相同的解析,这时候便想到了用递归的形式,递归的出口就是已经完成的遍历了当前所有的菜单。

下面附上json格式的菜单和json转换成Html的源码:


 ** "menu":[**

**    {"name":"菜单一,**

**      "menu":[**

**        {"name":"菜单一-1"},**

**        {"name":"菜单一-2"}**

**      ]**

**    },**

**    {"name":"菜单二",**

**      "menu":[**

**        {"name":"菜单二-1",**

**        "menu":[**

**          {"name":"菜单二-1-a"},**

**          {"name":"菜单二-2-b"}**

**        ]**

**      },**

**        {"name":"菜单二-2"}**

**      ]}**

**    {"name":"菜单三"}**

**  ]**

通过递归的形式进行Html的转换:


 ** function getMenuHtml(var json){**

**  var html="<ul>";**
最后修改:2018 年 03 月 03 日
如果觉得我的文章对你有用,请随意赞赏