java后台的输出流。输出的信息。后台输出信息不包含页面地址。怎么
在前台页面用js完成
接收信息。
给你个例子。
后台Java代码:
@RequestMapping(value = "/friendLinks/friendLinksList.do")
public void getfriendLinksList(HttpServletRequest request,
HttpServletResponse response, ModelMap modelMap){
response.setCharacterEncoding("UTF-8");
String pageNoStr = request.getParameter("pageNo");
Integer pageNo = 0;
try {
pageNo = Integer.valueOf(pageNoStr);
} catch (Exception e) {
pageNo = 0;
}
Page page = new Page();
page.setPageNo(pageNo);
//按分页条件查询用户
List<FriendLinks> linksList = null;
try {
linksList = friendLinksService.getFriendLinksList(page);
//将查出来的友情链接和分页信息放到json字符串中
JSONArray jsonList = new JSONArray();
JSONObject bj = JSONObject.fromObject(page);
jsonList.add(bj);
for (FriendLinks links : linksList) {
JSONObject obj = JSONObject.fromObject(links);
jsonList.add(obj);
}
response.getWriter().println(jsonList.toString());
response.getWriter().flush();
response.getWriter().close();
} catch (Exception e) {
e.printStackTrace();
}
return ;
}
JS中代码:
function fillData(pageNo) {
if (pageNo == "") {
pageNo = thisPageNo;
}
var stateValue = $("#stateValue").val();
var titleValue = $("#titleValue").val();
$.ajax({
url:contextPath + "/friendLinks/friendLinksList.do",
type:"POST",
data:{
pageNo:pageNo,
stateValue:stateValue,
titleValue:titleValue
},
dataType:"json",
beforeSend:function () {
$("#pageTd a").remove();
}, success:function (data) {
var page = data[0];
if (page.count == 0) {
var noDataMsg = "<tr><td colspan=\"9\" class=\"xiamian\">无相关数据</td></tr>";
$("#dataBody").html(noDataMsg);
var pageMsg = "总记录数:<strong>0</strong>"+
" 当前页:<strong>0/0</strong> "+
"<a href='javascript:;'>首页</a> "+
"<a href='javascript:;'>上一页</a> "+
"<a href='javascript:;'>下一页</a> "+
"<a href='javascript:;'>尾页</a> ";
$("#pageButtonBefore").html(pageMsg);
} else {
var dataMsg = "";
var caozuo = "";
var useOrNot = "";
for (var i = 1; i < data.length; i++) {
caozuo = "";
caozuo = caozuo + "<a href='javascript:;' onclick='checkJump(\""+data[i].id+"\")'>查看</a>";
caozuo = caozuo + "<a href='javascript:;' onclick='editJump(\""+data[i].id+"\")'>修改</a>";
caozuo = caozuo + "<a href='javascript:;' onclick='deleteJump(\""+data[i].id+"\")'>删除</a>";
if(data[i].status == "0"){
status = "是";
}else{
status = "否";
}
dataMsg = dataMsg + "<tr><td>" + i +
"</td><td>" + data[i].linkName +
"</td><td>" + data[i].linkSite +
"</td><td>" + status + "</td><td>";
dataMsg = dataMsg + caozuo;
dataMsg = dataMsg + "</td></tr>";
}
$("#dataBody").html(dataMsg);
var pageMsg = "总记录数:<strong>"+page.count+"</strong> 当前页:<strong>"+page.pageNo+"/"+page.totalPage+"</strong> "+
"<a href='javascript:fillData(\"1\");'>首页</a> "+
"<a href=javascript:fillData(\"" + page.pre + "\");>上一页</a> "+
"<a href=javascript:fillData(\"" + page.next + "\");>下一页</a> "+
"<a href=javascript:fillData(\"" + page.totalPage + "\");>尾页</a> ";
$("#pageButtonBefore").html(pageMsg);
}
}, error:function () {
alert("获取相关数据失败!");
}});
}
其实能看出来,JS怎么接收值跟后台用什么方式传没有多大关系,关键是看传过来的值格式是啥就好了。
传回来的是字符串,那就直接按照字符串处理,传回来的是Json格式的那就直接按照解析Json来处理。
一般都是用get方法获得
js一般通过ajax发送http请求,获取后台返回数据。ajax主要使用XMLHttpRequest返回值通过在回调函数中使用函数responseText和responseXml。当然直接使用JQuery等js框架更方便
推荐你一本书《全端Web开发:使用JavaScript与Java》