easyui 分页实现

1、用datagrid 做分页显示, 根据API例子,终于解决,废话不说,datagrid分页 有一个附加的分页控件 通过在datagrid中设置pagination:true 就会显示分页 当请求是 后台会通过 获取page 获取当前页 根据rows每页显示条数

返回格式 {"total":486,"rows":[{"age":10,"email":"[email protected]","id":1,"name":"张三","sex":"男"}]}

total 总条数不能改 rows 数据 查询出来的list

2、数据库数据

3、看效果如图:

4、html代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
			<link rel="stylesheet" type="text/css" href="css/themes/default/easyui.css">
	<link rel="stylesheet" type="text/css" href="css/demo.css">
	<link rel="stylesheet" type="text/css" href="css/themes/icon.css">
	<script type="text/javascript" src="js/jquery.min.js"></script>
	<script type="text/javascript" src="js/jquery.easyui.min.js"></script>
	<script type="text/javascript" src="js/easyui-lang-zh_CN.js"></script>
	</head>
	<body>

<table id="dg" class="easyui-datagrid" style="width:100%;">
</table>

 <script type="text/javascript">
    $('#dg').datagrid({
        url:'http://localhost:8080/easyui/TestData',//数据请求地址
       toolbar:'#toolbar',// 数据网格工具栏 比如添加 修改
       pagination:true,//分页显示
       fitColumns:true,//自动适应宽度
       autoRowHeight:true,//自动行高度
       loadMsg:'正在加载数据请稍后...',
       nowrap:true,//设置为true 有利于提高性能
       idField:'id',//字段标识
       rownumbers:true,//显示行号
       singleSelect:true,//只允许选择一行
       //pageNumber:1,//初始化页面数量
       pageSize:20,//初始化显示条数
       pageList:[20,40,60],//分页列表
        columns:[[
            {field:'id',title:'id',width:100},
            {field:'name',title:'name',width:100},
            {field:'email',title:'email',width:100,align:'center'}
        ]]
    });

   	/*
   	这里多多两句通过如下参数可获取一些分页数据
   		var opts=$('#dg').datagrid('options');
   		//获取当前页
   	   var page_Number = opts.pageNumber;   //pageNumber为datagrid的当前页码
          	//获取每页显示的条数
   	   var page_Size = opts.pageSize;
   	 */
    </script>

</body>
</html>

5、servlet类

import java.io.IOException;
import java.io.Writer;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

/**
 * Servlet implementation class TestData
 */
public class TestData extends HttpServlet {
	private static final long serialVersionUID = 1L;

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public TestData() {
		super();
		// TODO Auto-generated constructor stub
	}

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doPost(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {

		response.setContentType("application/json");
		response.setCharacterEncoding("UTF-8");
		response.setHeader("Cache-Control", "no-cache");

		// 获取前台页数
		int page = Integer.parseInt(request.getParameter("page"));
		// 获取前台每页显示条数
		int row = Integer.parseInt(request.getParameter("rows"));
		List<Userinfo> list = JDBCUtil.query(page, row);
		Map<String, Object> jsonMap = new HashMap<String, Object>();// 定义map
		jsonMap.put("total", JDBCUtil.queryCount());// total键 存放总记录数,必须的
		jsonMap.put("rows", list);// rows键 存放每页记录 list
		// 格式化result 一定要是JSONObject
		String result = JSONObject.fromObject(jsonMap).toString();
		System.out.println(result);
		Writer out = response.getWriter();
		out.write(result);
	}

}

源码下载地址:http://download.csdn.net/download/itlqi/8868529

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-27 05:10:23

easyui 分页实现的相关文章

后台使用oracle前台使用easyui分页机制

前台easyui 的datagrid中设置分页属性: pagination:true,//显示分页 pagePosition:'bottom',//分页栏位置 both 上下 bottom.top pageList:[12,24,36]//分页数据大小 后台java代码中 int page ,int rows写set. get方法. page = Integer.parseInt(request.getParameter("page")); rows = Integer.parseIn

jquery easy-ui 分页插件的运用(给td添加事件,获取汇总内容)

<#include '/admin/express-header.html' > <div class="main" style=" background:#fff; padding: 15px 0px 8px 10px; margin: 0px;"><div class="ex-boxOne"> <label for="start_date">订阅日期:</label&g

easyui分页的使用方法

使用: $("#tt").datagrid("getPager").pagination(option); 例子: $("#tb").datagrid("getPager").pagination({ total: 100, pageSize: 10, pageList: [10,20,30], onSelectPage: function(pageNumber, pageSize) { console.log(pageNum

关于easyUI分页

首先前台会传来两个参数,分别是rows(一页数据的大小,即一页有多少条数据)和page(第几页),根据这两个参数可以计算出从数据库中从第几条数据开始取和要取多少条数据.数据取出来后,因为easyUI用的是ajax分页,因此要对数据进行一些处理,第一:把数据转化为jsonArray的形式,再把数据放到jsonObject中取名为rows,另外就是要计算出这次的数据的数目,把它也放到jsonObject中,取名为total,总共就是要返回rows和total这两个数据. @RequestMappin

struts2 、mybatis 、easyui 分页

rows page 控件自动提交这两个参数 pageSize number The page size. 10pageNumber number Show the page number when pagination is created. 1pageList array User can change the page size. The pageList property defines how many size can be changed. [10,20,50,100] action

(转)EasyUI 分页总结

最近用到了easyui的分页和搜索栏功能,使用过程中由于运用不熟练导致其间也出现过一些问题,下面做个小结,供大家共同学习.1.首先使用EasyUI 的DataGrid分页,得加载其js类库:<link rel="stylesheet" type="text/css" href="http://www.jeasyui.com/easyui/themes/default/easyui.css"><link rel="sty

MVC 使用Jquery EasyUI分页成功

先上图吧 你得先下载一个EasyUi框架,地址:http://www.jeasyui.net/download/ 在你的项目中需要引用,前台代码如下: DataGrid.cshtml @{ Layout = null; } <!DOCTYPE html> <html> <head> <title>DDL</title> <link href="../../Scripts/JqueryEasyUi/themes/default/ea

springmvc+mybatis+easyui分页

道德三黄五帝,功名夏侯商周.五霸七雄闹春秋,顷刻兴亡过手.清时几行名姓,北芒无数荒丘.前人播种后人收,说什么原创与否. 今天和大家分享一下springmvc+mybatis+easyui的分页实现.springmvc,mybatis的优缺点不做太多敖述大家都比较了解了,ssm框架整合的例子网上也有很多了,为什么还要写这篇文章那,主要是觉得大多过于零散配置方式又是千差万别,总结一下本文希望对遇到此问题的人有所帮助,前人播种后人收.当然程序开发没有觉得正确,谁也说不出一个正确的实现第N行代码是什么,

easyui分页控件的应用

1.首先应用easyui的js和css文件 <link rel="stylesheet" type="text/css" href="../../util/jquery-easyui/themes/default/easyui.css" /> <link rel="stylesheet" type="text/css" href="../../util/jquery-easyui