//Ajax发送请求$().ready(function(){
$.ajax({
url: '${pageContext.request.contextPath}/adminMenuAction!menuList.action',
type:'POST',
dataType: 'json',
//调整超时时间会引起异常
timeout:3000,
//请求成功时触发的事件
success:function(data){
for(var i=0;i<data.length;i++)
{
//alert(data[i]["name"]);
var name = data[i]["name"];
var url = data[i]["url"];
var target = data[i]["target"];
//向html中插入<li>
$("#navlist").append("<li><a href=\"#\" onClick=\"meau_load('"+url+"')\">"+name+"</a></li>");
}
},
//请求失败时触发的事件
error:function(xhr, errorInfo, ex){
},
//请求完成后触发的事件,即在success和error触发后执行的事件
complete:function(xhr,status){},
//发送请求前触发的事件
beforSend:function(xhr){},
//是否异步发送
async:true
});
});
struts2接受,并返回json数据
public void menuList(){
List<AdminMenu> l = adminMenuService.menu();
super.writeJson(l);
}
本文介绍了一种使用Ajax与Struts2框架相结合的方法来实现实时动态加载菜单的功能。通过Ajax发送POST请求到服务器端的Struts2 Action,服务器端通过调用业务逻辑获取菜单数据并将其转换为JSON格式返回。前端接收到数据后,动态构建并更新HTML中的菜单列表。
127

被折叠的 条评论
为什么被折叠?



