通过ajax把参数发送到后台,后台查到数据后写到前台的,如最简单的post方式,
$.post("后台页路径","参数,一般是json格式",function(dd){
//这是回调函数,dd代表还回的数据
})
例子:
index.jsp;
<head>
<script type="text/javascript">
$(function() {
getArticleList("articles",12,{aid:"ccust.about.move",start:"0",offset:"10"});
getMenuList("content");
});
function getArticleList(divid,size,opt){
//获得文章列表
$.post("<%=request.getContextPath()%>/webdo/article/articleListByPage.do",
opt,
function(json){
var str = "";
$("#"+divid).html(str);//清空html内容
var num = json.rows.length;
var aid = "";
if(num>0){
for(var i=0;i<num;i++) {
var id = json.rows[i].id;
var image = json.rows[i].image;
var title = size!=null&&size!=""&&json.rows[i].title.length>size?json.rows[i].title.substr(0,size)+"...":json.rows[i].title;
var datetime = json.rows[i].createTime.substr(0,10);
var url="<%=request.getContextPath()%>/ccust/detail.jsp?cid="+opt.aid+"&did="+id;
str=$("#"+divid).html()+"<li><a href=\""+url+"\">·"+title+"</a>["+datetime+"]</li>";//把html内容加入到str中
$("#"+divid).html(str);
}
}
},
"json");
}
</script>
</head>
<body>
<div id="articles"></div>
</body>
ArticleListByPage.do
public class ArticleListByPageAction implements IAction {
public IView execute(HttpServletRequest request,
HttpServletResponse response) {
String aid = request.getParameter("aid");
String start = request.getParameter("start");
String offset = request.getParameter("offset");
ListData<Article> data = Article.getByCidByShow(aid,start,offset);
return new JsonView(JSONUtils.getDataGridJSON(data.getTotal(),
data.getList()));
}
public String requestMapping() {
return "/webdo/article/articleListByPage.do";
}
}