MVC生成页码选择器返回HTML代码详解

2025-05-29 0 21

我主要讲此代码用于MVC的分布页。

先看最终效果最终效果:

MVC生成页码选择器返回HTML代码详解

MVC生成页码选择器返回HTML代码详解

MVC生成页码选择器返回HTML代码详解

MVC生成页码选择器返回HTML代码详解

MVC生成页码选择器返回HTML代码详解

MVC生成页码选择器返回HTML代码详解

样式为bootstrap3中的分页“pagination”,如果不使用bootstrap单独提出来并不大

页码生成代码为:

?

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
public string GetPaginationHtml(PaginationViewModel p)

{

var PageNum = p.Page;//当前页码(页码从1开始)

var PageCount = p.PageCount;//总页数

var ItemCount = p.ItemCount;//总条数

var showPageNum = 6;//显示数字的页面数量

var html = new StringBuilder();

html.Append(string.Format("<ul class='pagination' id='{0}' data-data='{1}'>", p.ULID, p.Data));//ULID和Data是方便在前台增加事件用的

if (PageCount > 1)

{

var startPage = 1;

if (showPageNum > PageCount)

{

startPage = 1;

}

else

{

if (PageNum - (showPageNum / 2) <= 0)

{

startPage = 1;

}

else if (PageNum + (showPageNum / 2) >= PageCount)

{

startPage = PageCount - showPageNum;

}

else

{

startPage = PageNum - (showPageNum / 2);

}

}

startPage = (startPage == 0 ? 1 : startPage);//第一个开始显示数字的页码

//上一页按钮

html.Append(string.Format("<li class='{0}'><a href='#' class='js-pageSelect' data-page='{1}'><span>上一页</span></a></li>", PageNum <= 1 ? "disabled" : "", PageNum - 1));

if (startPage > 1)//生成第一页按钮和中间省略号

{

html.Append("<li><a class='js-pageSelect'' href='#' data-page='1'>1</a></li>");

if (startPage > 2)

{

html.Append("<li><span>...</span></li>");

}

}

for (int i = startPage; i <= (startPage + showPageNum); i++)//生成页码

{

if (i > PageCount)

{

break;

}

html.Append(string.Format("<li class='{0}'><a class='js-pageSelect'' href='#' data-page='{1}'>{2}</a></li>", i == PageNum ? "active" : "", i, i));

}

//生成最后一页按钮和中间省略号

int maxShowPage = startPage + showPageNum;

if (maxShowPage <= PageCount - 1)

{

if(maxShowPage <= PageCount - 2)

{

html.Append("<li><span>...</span></li>");

}

html.Append(string.Format("<li><a class='js-pageSelect'' href='#' data-page='{0}'>{1}</a></li>",PageCount,PageCount));

}

//显示下一页按钮

html.Append(string.Format("<li class='{0}'><a href='#' class='js-pageSelect' data-page='{1}'><span>下一页</span></a></li>", PageNum >= PageCount ? "disabled" : "", PageNum + 1));

//显示页码信息

html.Append(string.Format("<li><span>第{0}页 共{1}页{2}条内容</span></li>", PageNum, PageCount, ItemCount));

}

else

{

//内容不足一页时显示的内容

html.Append(string.Format("<li><span>共1页{0}条内容</span></li>", ItemCount));

}

return html.ToString();

}

用的时候直接放到MVC Controllers 中ActionResult 返回Content(html)。

页面中可以直接

?

1
@Html.Action("", new {page = 1,pageSize = 20, ... })

也可以

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14
$.ajax({

url: '/Function/FileArchiveSelectShouWenDengJiTableMessage',

type: 'post',

dataType: 'html',

data: {

page: page,

pageSize: pagesize,

...

},

})

.done(function (data) {

$('#ShouWenPageSelect').html(data);

InitPageSelectEvent();

});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 MVC生成页码选择器返回HTML代码详解 https://www.kuaiidc.com/99261.html

相关文章

发表评论
暂无评论