EasyUI 树型菜单 异步加载树

问题描述:想用EasyUI实现树结构,点击加号时,展开的子节点不正确。

问题解决: 展开第一层节点和展开其他子节点一样,可以调用一个方法。当前节点的id能自动传到后台。

效果图:EasyUI 树型菜单 异步加载树_第1张图片

关键代码: 后台是SpringMVC+mybatis+Spring,控制层代码如下:

	/**
	 * 加载子节点
	 * @param model
	 * @param pid
	 * @return
	 */
	@RequestMapping(value = "/getChildren")
	@ResponseBody
	public List getChildren(Model model,HttpServletRequest request) {
		//System.out.println("父节点ID="+id);
		String id=request.getParameter("id");
		if(id==null){
			id="0";
		}
		List data = menuService.getChildren(Integer.valueOf(id));
		return data;		
	}

上述返回json类型的数据到前台,格式为:

[{"id":1,"text":"系统菜单","state":"closed",pid:0},
{"id":2,"text":"管理员","state":"open",pid:1},
{"id":3,"text":"数据字典","state":"open",pid:1}]


前台调用的方法:

html部分:


JS部分:

	//初始化方法
	$(function(){
		
		//加载全部节点
		$("#tree_menu").tree({
			 url: '<%=request.getContextPath() %>/manage/menu/getChildren',
			 animate:true,
			 lines:true,
	         onClick: function (node) {
	        	 //右侧跳转到指定页面
	        	addTab(node.text,node.menuUrl);    	
	             
	         }
		});
	});




你可能感兴趣的:(前端)