常常通个页面向spring发出请求,服务器完成对数据的处理后,返回数据给jsp。这里有几种方式:
1,直接向jsp返回数据:
一定要在方法上加@ResponseBody如下:
spring
// 查询bug
@RequestMapping(params = "method=queryBug")
public @ResponseBody String querybug(String serviceid, String starttime) {
//o为需要返回的数据,将它转换为json格式数据。。
return JSONArray.fromObject(o).toString();
}
jsp:
遍历接收到的数据,i为索引,n如果为对象那么就用n.id (n.字段名)的格式
$.post("countBugHandle.do?method=query",{menuId: $('#menuId').val(),servId:servId,startTime:startTime,endTime:endTime,combobox_type:combobox_type}, function(data) { $("#tr").empty(); $.each(data,function(i,n){ if(i==0){ var tr = $("<tr></tr>"); $.each(n,function(j){ if(j==0){ tr.append("<td class='rows grade_col_first' >"+n[j]+"</td>"); }else{ tr.append("<td class='rows grade_col' >"+n[j]+"</td>"); } }); $("#gamedatetable").append(tr); }else{ if(i%2==0){ var tr = $("<tr style='background: #e6eaf2;'></tr>"); $.each(n,function(j){ tr.append("<td class='rows'>"+n[j]+"</td>"); }); $("#gamedatetable").append(tr); }else{ var tr = $("<tr></tr>"); $.each(n,function(j){ tr.append("<td class='rows'>"+n[j]+"</td>"); }); $("#gamedatetable").append(tr); } } }); }, "json");
2,向jsp返回jsp文件:
return "acrosserveraction/acrosserBossShow"; 就是指一个具体的jsp文件。。把数据存储到请求对象中
@RequestMapping(params = "method=select") public String select(HttpServletRequest request, String bossid) {
request.setAttribute("list", alist);
return "acrosserveraction/acrosserBossShow";
}
jsp页面:
把返回的数据data用html的方法加载到div里。
$("#boss_select").click(function(){ $.post("acrosBoss.do?method=select",{ "menuId":$("#menuId").val() }, function(data) { $("#show").html(data); }, "html"); }).button(); <span>所在位置:游戏控制----跨服boss</span><br><br><br> <input type="button" id="boss_select" value="查询"/> <div id = "show">
acrosserBossShow.jsp:在这个jsp里直接用el表达试,读取到存入在request中的数据,加载到页面上
<table id="gamedatetable" class="weight1150" border="0" cellpadding="0" cellspacing="0"> <tbody> <tr style='line-height: 28px;'> <td class="col_50" ><a href="javascript:void(0)" onclick="invertTask()" style="color: green;">选择服务器</a></td> <td class="col_50 minwidth" >状态</td> <td class="col_50" >dbid</td> <td class="col_50" >idx</td> </tr> <c:forEach items="${list}" var="n" varStatus="vs" > <td class='cen rows' >${n.serverid }<input type='checkbox' name='bossid' value='${n.dbid }' /></td> <td class='cen rows minwidth' >${n.status }</td> <td class='cen rows minwidth' >${n.dbid }</td> <td class='cen rows' >${n.idx }</td> </tr> </c:forEach> </tbody> </table>