jquery easyui Accordion 动态生成菜单

package com.kerun.app.action;

import java.util.ArrayList;
import java.util.List;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import com.kerun.app.util.AppConstants;
import com.kerun.app.model.Menus;
@SuppressWarnings("serial")
@Controller()
@Scope("prototype")
public class MenuAction {
private List<Menus> lista;
public List<Menus> getLista() {
return lista;
}
public void setLista(List<Menus> lista) {
this.lista = lista;
}


public String goJquery()
{

lista=new ArrayList<Menus>();//主菜单集合 Menus是个entity (   

private int subMenuCount;//子菜单数量
    private String menuName;//菜单名称
    private List<Menus>  subMenus=new ArrayList<Menus>();//子菜单集合
    private String menuUrl;//菜单链接


.....省略get 。set方法了



for(int i=0;i<4;i++)
{
Menus m=new Menus();
m.setMenuName("主菜单"+i);//一级菜单
for(int j=0;j<3;j++)
{
Menus sub=new Menus();

sub.setMenuName("子菜单"+i);//二级菜单

sub.setMenuUrl("Member_goLogin.action");
m.addMenu(sub);//加到一级菜单里面
for(int z=0;z<3;z++)
{
Menus third=new Menus();

third.setMenuName("子菜单"+i);//三级菜单

third.setMenuUrl("Member_goLogin.action");
sub.addMenu(third);//加到二级菜单里面
}


}

lista.add(m);
}
System.out.println(lista.size());
return AppConstants.RETURN_TYPE_FREEMARKER;

}

/*

goJquery 方法获取到要生成的菜单项(一级菜单,二级菜单,三级菜单。。。。。此处我用for来做的假数据)

将数据add()到list里。在页面获取到该list      循环解析出来 。下面是我做的例子的解析部分  我用的freemarker 根据自己用的替换就可以了。open方法是每次都创建一个Tab打开对应的url。

    <div data-options="region:'west',split:true" title="功能菜单" style="width:280px;padding1:1px;overflow:hidden;">
        <div id="menuDiv" class="easyui-accordion" data-options="fit:true,border:false">
                 <#list lista as m> //此处循环一级菜单
                <div title="${(m.menuName)!''}" style="padding:10px;overflow:auto;">
                <#list m.subMenus as s>//循环二级
                <p><span onClick="Open('${(s.menuName)!''}','${(s.menuUrl)!''}')" class="icon-set icon">${(s.menuName)!''}</span></p>
                   <#list s.subMenus as third>//循环三级

                         <p><span onClick="Open('${(third.menuName)!''}','${(third.menuUrl)!''}')" class="icon-set icon">${(third.menuName)!''}</span></p>

                </#list>
                </div>
                </#list>
        
        </div>

*/

}

你可能感兴趣的:(jquery easyui Accordion 动态生成菜单)