三级菜单渲染
来源:互联网 发布:dota2战队数据 编辑:程序博客网 时间:2024/05/29 15:45
def menu_data(request): # 主菜单 menus = [] # 二级菜单 second_level_menu = [] # 三级菜单 three_level_menu = [] # 方法 k = -1 # **** for i in get_menu: get_second_level_menu = MenuManager.get_second_level_menu(i.id) menus.append(i) k += 1 second_level_menu.append(get_second_level_menu) three_level_menu.append([]) # **** for j in second_level_menu[k]: get_three_level_menu = MenuManager.get_three_level_menu(j.id) three_level_menu[k].append(get_three_level_menu) print menus print second_level_menu print three_level_menu------------------------------------------------打印结果:[<Menu: 主菜单1>, <Menu: 主菜单2>, <Menu: 主菜单3>][[<Menu:二级菜单1_1>,<Menu:二级菜单1_2>,<Menu:二级菜单1_3>],[<Menu:二级菜单2_1>,<Menu:二级菜单2_2>],[<Menu:二级菜单3_1>,<Menu:二级菜单3_2>]][[[<Menu:三级菜单1_1_1>,<Menu:三级菜单1_1_2>],[<Menu:三极菜单1_2_1>,<Menu:三极菜单1_2_2>],[<Menu:三极菜单1_3_1>]],[[<Menu:三极菜单2_1_1>,<Menu:三极菜单2_1_2>],[<Menu:三极菜单2_2_1>,<Menu:三极菜单2_2_2>]],[[<Menu:三极菜单3_1_1>,<Menu:三极菜单3_1_2>],[<Menu:三极菜单3_2_1>,<Menu:三极菜单3_2_2]]]
以上是从数据库中取出的数据,现在需要html渲染
<li class="grid" style="display: inline;"><a class="color1" href="index.html">首页</a></li><li class="active grid" style="display: inline;"><a class="color2" href="#">主菜单1</a><div class="megapanel" style="display: none; opacity: 1;"><div class="row"><div class="col1"><div class="h_nav"><h4>二级菜单1_1</h4><ul><li><a href="women.html">三极菜单1_1_1</a></li><li><a href="women.html">三极菜单1_1_2</a></li><li><a href="women.html">三极菜单1_1_3</a></li></ul></div></div><div class="col1"><div class="h_nav"><h4>二极菜单1_2</h4><ul><li><a href="women.html">三极菜单1_2_1</a></li><li><a href="women.html">三极菜单1_2_2</a></li><li><a href="women.html">三极菜单1_2_3</a></li></ul></div></div><div class="col1"><div class="h_nav"><h4>二极菜单1_3</h4><ul><li><a href="women.html">三极菜单1_3_1</a></li><li><a href="women.html">三极菜单1_3_2</a></li></ul></div></div></div><div class="row"><div class="col2"></div><div class="col1"></div><div class="col1"></div><div class="col1"></div><div class="col1"></div></div></div></li>
渲染方法
a = -1 f_m_t = '' for i in menus: f_m_t += '<li class="active grid" style="display: inline;"><a class="color2" href="#">'+str(i)+'</a><div class="megapanel" style="display: none; opacity: 1;"><div class="row">' a += 1 b = -1 s_m_h = '' for j in second_level_menu[a]: s_m_h += '<div class="col1"> <div class="h_nav"> <h4>'+str(j)+'</h4> <ul>' b += 1 t_m_h = '' for k in three_level_menu[a][b]: t_m_h += '<li><a href="women.html">'+str(k)+'</a></li>' t_m_h += '</ul> </div> </div>' s_m_h += t_m_h s_m_h += '</div>' f_m_t += s_m_h html = f_m_t
1 0
- 三级菜单渲染
- 三级菜单
- 三级菜单
- 三级菜单
- 三级菜单
- 三级菜单
- 三级菜单
- 三级菜单
- 三级菜单
- 三级菜单
- 三级菜单
- 仿QQ菜单----三级菜单
- 三级联动菜单
- 关联菜单.三级
- JS 三级联动菜单
- javascript三级下拉菜单
- 三级下拉菜单 (通用版):
- 下拉三级菜单
- 在 Windows 上遇到非常多 TIME_WAIT 連線時應如何處理
- 解决ubuntu中vi不能正常使用方向键与退格键的问题
- PL/SQL使用
- mysql+navicat+JDBC+Tomcat+nat123实现域名访问个人网站
- 使用flex的一点说明
- 三级菜单渲染
- 单例模式和NSOperation的运用
- 网店系统javashop发布其开源框架,遵循GPL协议
- mapreduce的shuffle,partition,combine
- 使用MyBatis Generator自动创建代码
- 67. Add Binary【E】【44】【leetcode】
- c语言 圆周率代码
- 充电提示音
- PHP 中的命名空间