LigerUI Grid(表格)分页要注意的地方

给你的grid控件添加个属性:
usePager: true//开启分页 不然grid底部的上一页下一页类似这样的按钮都没有

当usePager设置为true时,单击分页条上的按钮后所提交的请求中会默认多添加2个参数:page和pagesize,这俩参数不用手动自己添加,作为使用者,我们只要在服务器端接受这俩参数就可以了。

参数page:想得到第几页;
参数pagesize:每页显示多少条记录;

也就是说在页面设置usePager:true 后,下面的工作就在服务器端进行了。

    服务端拿到page和pagesize参数后,通过参数查询得到返回的结果后,还要手动查询总记录数

因为我用AJAX的方式来实现填充Grid,并且这个grid接受的是JSON数据,这个json数据还有格式要求:

    请参考我的服务端代码(只供参考):


@RequestMapping("/chance/list")
	public @ResponseBody
	String proccessList(Model model,String page,String pagesize) {
		
		log.info("分页信息:"+page+","+pagesize);
		if(null==page){page="1";}
		if(null==pagesize){pagesize="5";}
		List<Chance> list = chanceBiz.list(Integer.valueOf(page),Integer.valueOf(pagesize));
		ObjectMapper map = new ObjectMapper();  //这个对象是jackson库里的
		String rst = "";
		try {
			rst = map.writeValueAsString(list);//转换为JSON
		} catch (JsonProcessingException e) {
			log.error(">>-----把List转换成JSON格式出错!------<<");
			e.printStackTrace();
		}
		log.info(rst);
		int totalCount=chanceBiz.getTotalCount();//所有记录数
		StringBuilder sb = new StringBuilder(); //修正格式符合grid要求的json格式
		sb.append("{\"Rows\":");
		sb.append(rst);
		sb.append(",\"Total\":");
		sb.append(totalCount+"}");//追加所有记录数到json
		rst = sb.toString();
		return rst;
	}
因为我使用的Spring MVC,对于 客户端传来的参数,在服务端在处理请求的方法的参数里声明同名的参数即可获得。


grid要求的json格式如下:

{

"Rows":[{"id":1,"name":"test1"},{"id":2,"name":"test2"}],

"total":13

}

"Rows" R 不能小写哦。。

jackson下载地址:http://wiki.fasterxml.com/JacksonDownload

你可能感兴趣的:(LigerUI Grid(表格)分页要注意的地方)