就是 ajax 提交服务器的请求 然后 服务器返回的数据 用 json 嘛 就是 通过JSONArray 把List或者javabean转成 json格式,在 通过 PrintWrite输出嘛, 如果我要输出的是两个不同的对象,一个是List集合转换过来的,另外一个还要输出一个javabean,用于分页的,但是这些输出后最后在ajax那里 var data = xmlRequest.responseText 它就全部组合成一个字符串了,怎么给它分开呢。我是在做一个书籍的留言评论,然后 我的要求是 留言翻页的时候我通过ajax来提交的,去数据库查到数据List集合后通过JSONArray专JSON格式,但是我还在界面显示还需要一个分页的 javabean需要传到页面上去,请问我用ajax这个时候该怎么提取数据?还在在servlet上该如何发送数据。因为一个是 发送list转成的json 另外一个是 分页javabean转成的json.............求各位大神讲解
[code="java"]
public class DataModel{
public String id = null;
public String name = null;
public String content = null;
}
public class PageBean {
public int rownumber = 0;
public int pagecount = 0;
public int pageindex = 0;
}
/**
*如你既要List又要 PageBean 那么你得这么返回
定义一个新类
*/
public class JsonBean {
public List datas;
public PageBean page;
}
//生成的json传格式是
{
page:{
rownumber:1,
pagecount:1,
pageindex:1
},
datas:[
{id:"",name:"",content:""},
{id:"",name:"",content:""},
{id:"",name:"",content:""}
]
}
//然后在前台,你使用
var strData = xmlRequest.responseText;
if(typeof strData !== "object")
strData = eval('('+strData+')');
//然后,数据信息通过
var dataArray = strData.datas;
//分页信息对象
var pageObj = strData.page;
//想要获取page中的值
var pageindex = pageObj.pageindex;
//....其他的就不多描述
[/code]
能不能把javabean也直接放到JSON对象里,然后ajax获取之后,顺便用js更新下分页的页码之类的,这种思路成不
[code="java"]JSONObject jsonObject = new JSONObject();
jsonObject.element("list", list);
JSONObject beanObject = (JSONObject) JSONSerializer.toJSON(javabean);
jsonObject.element("javaBean", beanObject);[/code]
使用jsonobject转