ASP.NET GridView的Bootstrap分页样式

2025-05-29 0 14

本文实例为大家分享了GridView的Bootstrap分页样式,供大家参考,具体内容如下

Revenue.cs收入类,包括实体模型和业务逻辑

?

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
public class Revenue

{

public Revenue(string country, string revenue, string salesmanager, string year)

{

this.country = country;

this.revenue = revenue;

this.salesmanager = salesmanager;

this.year = year;

}

public Revenue() { }

public string country { get; set; }

public string revenue { get; set; }

public string salesmanager { get; set; }

public string year { get; set; }

public List<Revenue> GetRevenueDetails(int pagenumber,int maxrecords)

{

List<Revenue> lstRevenue = new List<Revenue>();

string filename = HttpContext.Current.Server.MapPath("~/App_Data/country_revenue.csv");

int startrecord = (pagenumber * maxrecords) - maxrecords;

if (File.Exists(filename))

{

IEnumerable<int> range = Enumerable.Range(startrecord, maxrecords);

IEnumerable<String> lines = getFileLines(filename, range);

foreach (String line in lines)

{

string[] row = line.Split(',');

lstRevenue.Add(new Revenue(row[0], row[1], row[2], row[3]));

}

}

return lstRevenue;

}

public static IEnumerable<String> getFileLines(String path, IEnumerable<int> lineIndices)

{

return File.ReadLines(path).Where((l, i) => lineIndices.Contains(i));

}

public int GetTotalRecordCount()

{

string filename = HttpContext.Current.Server.MapPath("~/App_Data/country_revenue.csv");

int count = 0;

if (File.Exists(filename))

{

string[] data = File.ReadAllLines(filename);

count= data.Length;

}

return count;

}

}

Default.aspx内容:

?

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

92

93

94

95
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="GridViewBootstrapPagination.Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<title>GridView的Bootstrap分页样式</title>

<link href="Styles/bootstrap.min.css" rel="stylesheet" />

<script src="Scripts/jquery-1.8.2.js"></script>

<script src="Scripts/jquery.bootpag.min.js"></script>

<script type="text/javascript">

$(document).ready(function () {

// init bootpag

var count = GetTotalPageCount();

$('#page-selection').bootpag(

{

total:count

}).on("page", function (event, num) {

GetGridData(num);

});

});

function GetGridData(num) {

$.ajax({

type: "POST",

url: "Default.aspx/GetRevenueDetail",

data: "{ \\"pagenumber\\":" + num + "}",

contentType: "application/json; charset=utf-8",

dataType: "json",

success: function (data) {

bindGrid(data.d);

},

error: function (xhr, status, err) {

var err = eval("(" + xhr.responseText + ")");

alert(err.Message);

}

});

}

function bindGrid(data) {

$("[id*=gvBSPagination] tr").not(":first").not(":last").remove();

var table1 = $('[id*=gvBSPagination]');

var firstRow = "$('[id*=gvBSPagination] tr:first-child')";

for (var i = 0; i < data.length; i++) {

var rowNew = $("<tr><td></td><td></td><td></td><td></td></tr>");

rowNew.children().eq(0).text(data[i].country);

rowNew.children().eq(1).text(data[i].revenue);

rowNew.children().eq(2).text(data[i].salesmanager);

rowNew.children().eq(3).text(data[i].year);

rowNew.insertBefore($("[id*=gvBSPagination] tr:last-child"));

}

}

function GetTotalPageCount() {

var mytempvar = 0;

$.ajax({

type: "POST",

url: "Default.aspx/GetTotalPageCount",

data: "",

contentType: "application/json; charset=utf-8",

dataType: "json",

async:false,

success: function (data) {

mytempvar=data.d;

},

error: function (xhr, status, err) {

var err = eval("(" + xhr.responseText + ")");

alert(err.Message);

}

});

return mytempvar;

}

</script>

</head>

<body>

<form id="form1" runat="server">

<div style="width:670px;margin-left:auto;margin-right:auto;">

<h2 style="text-align:center;">ASP.NET GridView的Bootstrap分页样式</h2>

<asp:GridView ID="gvBSPagination" runat="server" CssClass="table table-striped table-bordered table-condensed" Width="660px" AllowPaging="true" PageSize="5" OnPreRender="gvBSPagination_PreRender">

<PagerTemplate>

<div id="page-selection" class="pagination-centered"></div>

</PagerTemplate>

</asp:GridView>

<div id="content"></div>

</div>

</form>

</body>

</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
public partial class Default : System.Web.UI.Page

{

private const int MAX_RECORDS = 5;

protected void Page_Load(object sender, EventArgs e)

{

string filename = Server.MapPath("~/App_Data/country_revenue.csv");

if (!IsPostBack)

{

List<Revenue> revenue = GetRevenueDetail(1);

gvBSPagination.DataSource = revenue;

gvBSPagination.DataBind();

}

}

[WebMethod]

[ScriptMethod(UseHttpGet = false, ResponseFormat = ResponseFormat.Json)]

public static List<Revenue> GetRevenueDetail(int pagenumber)

{

Revenue rv = new Revenue();

List<Revenue> lstrevenue = rv.GetRevenueDetails(pagenumber,MAX_RECORDS);

return lstrevenue;

}

[WebMethod]

[ScriptMethod(UseHttpGet = false, ResponseFormat = ResponseFormat.Json)]

public static int GetTotalPageCount()

{

int count=0;

Revenue rv=new Revenue();

count = rv.GetTotalRecordCount();

count = count / MAX_RECORDS;

return count;

}

protected void gvBSPagination_PreRender(object sender, EventArgs e)

{

GridView gv = (GridView)sender;

GridViewRow pagerRow = (GridViewRow)gv.BottomPagerRow;

if (pagerRow != null && pagerRow.Visible == false)

pagerRow.Visible = true;

}

}

country_revenue.csv

ASP.NET GridView的Bootstrap分页样式

项目运行结果如图:

ASP.NET GridView的Bootstrap分页样式

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

收藏 (0) 打赏

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

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

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

快网idc优惠网 建站教程 ASP.NET GridView的Bootstrap分页样式 https://www.kuaiidc.com/99910.html

相关文章

发表评论
暂无评论