如图:
1、控制器代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
//
// GET: /AjaxUser/
shopEntities shop = new shopEntities();
public ActionResult Index()
{
return View();
}
public ActionResult loadjson()
{
int pageSize = Request[ "pageSize" ] == null ? 10 : int .Parse(Request[ "pageSize" ]);
int pageIndex = Request[ "pageIndex" ] == null ? 1 : int .Parse(Request[ "pageIndex" ]);
int totalCount = shop.tbl_admin.Count();
//给前台userinfo所有的数据,并且是json格式
var allorder = shop.tbl_admin.OrderBy(u=>u.id)
.Skip(pageSize*(pageIndex-1))
.Take(pageSize)
.ToList();
//接受一个对像,内部把此对象使用javaScript序列化类对象志字符串,发送到前台
var data = from u in allorder select new { u.id,u.realname,u.sex};
string strNav = PageNavHelper.ShowPageNavigate(pageIndex,pageSize,totalCount);
var result = new {Data=data, NavStr=strNav };
return Json(result, JsonRequestBehavior.AllowGet);
}
|
2、Html代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
@{
Layout = null;
}
<!DOCTYPE html>
< html >
< head >
< meta name = "viewport" content = "width=device-width" />
< title >Index</ title >
< link href = "~/Content/NavPage.css" rel = "stylesheet" />
< script src = "~/Scripts/jquery-1.8.2.min.js" ></ script >
< script src = "~/Scripts/jquery-ui-1.8.24.js" ></ script >
< script src = "~/Scripts/jquery.easyui.min.js" ></ script >
< script src = "~/Scripts/jquery.unobtrusive-ajax.js" ></ script >
< script src = "~/Scripts/jquery.validate.unobtrusive.js" ></ script >
< script type = "text/javascript" >
$(function () {
//页面加载完成后从后如加载当前页数据
initTable();
});
//初始化表格数据
function initTable(queryData)
{
$.getJSON("/AjaxUser/loadjson",queryData, function (data) {
var tb = $("#tbList");
//先移除旧的,添加新的
$("#tbList tr[type=data]").remove();
for (var i = 0; i < data.Data.length ; i++)
{
var strTr = "<tr type = 'data' >";
strTr += "< td >" + data.Data[i].id + "</ td >";
strTr += "< td >" + data.Data[i].realname + "</ td >";
strTr += "< td >" + data.Data[i].sex + "</ td >";
strTr += "< td >< a UId = '" + data.Data[i].id + "' href = 'javascript:void(0)' >修改</ a >" +
"< a UId = '" + data.Data[i].ID + "' href = 'javascript:void(0)' >删除</ a ></ td >";
strTr += "</ tr >";
tb.append(strTr);
}
$("#Nav").html(data.NavStr);
//绑定分页标签的点击事件
$(".pageLink").click(function () {
//把页码弹出来
var strHref = $(this).attr("href");
var queryStr = strHref.substr(strHref.indexOf('?') + 1);
//alert(queryStr);
initTable(queryStr);
return false;
});
});
}
</ script >
</ head >
< body >
< div >
< table id = "tbList" >
< tr >
< td >id</ td >
< td >姓名</ td >
< td >性别</ td >
< td >操作</ td >
</ tr >
</ table >
< div id = "Nav" class = "paginator" >
</ div >
</ div >
</ body >
</ html >
|
3、分页类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
namespace MvcTest4.Models
{
public class PageNavHelper
{
//主要就是输出分页的超级链接的标签
//自定义分页Helper扩展
public static string ShowPageNavigate( int currentPage, int pageSize, int totalCount)
{
var redirectTo = HttpContext.Current.Request.Url.AbsolutePath;
pageSize = pageSize <= 0 ? 3 : pageSize;
var totalPages = Math.Max((totalCount + pageSize - 1) / pageSize, 1); //总页数
var output = new StringBuilder();
if (totalPages > 1)
{
//if (currentPage != 1)
{ //处理首页连接
output.AppendFormat( "<a class='pageLink' href='{0}?pageIndex=1&pageSize={1}'>首页</a> " , redirectTo, pageSize);
}
if (currentPage > 1)
{ //处理上一页的连接
output.AppendFormat( "<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>上一页</a> " , redirectTo, currentPage - 1, pageSize);
}
else
{
// output.Append("<span class='pageLink'>上一页</span>");
}
output.Append( " " );
int currint = 5;
for ( int i = 0; i <= 10; i++)
{ //一共最多显示10个页码,前面5个,后面5个
if ((currentPage + i - currint) >= 1 && (currentPage + i - currint) <= totalPages)
{
if (currint == i)
{ //当前页处理
//output.Append(string.Format("[{0}]", currentPage));
output.AppendFormat( "<a class='cpb' href='{0}?pageIndex={1}&pageSize={2}'>{3}</a> " , redirectTo, currentPage, pageSize, currentPage);
}
else
{ //一般页处理
output.AppendFormat( "<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>{3}</a> " , redirectTo, currentPage + i - currint, pageSize, currentPage + i - currint);
}
}
output.Append( " " );
}
if (currentPage < totalPages)
{ //处理下一页的链接
output.AppendFormat( "<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>下一页</a> " , redirectTo, currentPage + 1, pageSize);
}
else
{
//output.Append("<span class='pageLink'>下一页</span>");
}
output.Append( " " );
if (currentPage != totalPages)
{
output.AppendFormat( "<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>末页</a> " , redirectTo, totalPages, pageSize);
}
output.Append( " " );
}
output.AppendFormat( "第{0}页 / 共{1}页" , currentPage, totalPages); //这个统计加不加都行
return output.ToString();
}
}
}
|
4、分页CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
body {
}
.paginator {
font : 12px Arial , Helvetica , sans-serif ;
padding : 10px 20px 10px 0 ;
margin : 0px ;
}
.paginator a {
border : solid 1px #ccc ;
color : #0063dc ;
cursor : pointer ;
text-decoration : none ;
}
.paginator a:visited {
padding : 1px 6px ;
border : solid 1px #ddd ;
background : #fff ;
text-decoration : none ;
}
.paginator .cpb {
border : 1px solid #F50 ;
font-weight : 700 ;
color : #F50 ;
background-color : #ffeee5 ;
}
.paginator a:hover {
border : solid 1px #F50 ;
color : #f60 ;
text-decoration : none ;
}
.paginator a, .paginator a:visited, .paginator .cpb, .paginator a:hover {
float : left ;
height : 16px ;
line-height : 16px ;
min-width : 10px ;
_width : 10px ;
margin-right : 5px ;
text-align : center ;
white-space : nowrap ;
font-size : 12px ;
font-family : Arial ,SimSun;
padding : 0 3px ;
}
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。