asp.net实现简单的分页插件

2026-03-05 01:56:32

1、获取要分页的总记录条数: var count =<%=pagecount()%>//数据总条数

这里用的是asp.net的绑定方法

2、制作分页页码数:

 var pagegount = (count / 8).toFixed(0);//总页数

                            var p_len = pagegount.length;//页数长度

                            var p_str = (count / 8).toString().substring(parseInt(p_len) + 1, parseInt(p_len) + 2);//截取页数小数点后的第一位数

                            if (parseInt(p_str) >= 5) {

                                pagegount = (parseInt(pagegount) -1).toString();

                            }

                            else if (pagegount == 0)

                            {

                                pagegount = (parseInt(pagegount) + 1).toString();

                            }

                            else {

                                pagegount = pagegount;

                            }

                            $("#page").append("<a class='p_provied'>上一页</a>");//循环添加页码

                            for (var i = 1; i <= pagegount; i++) {

                                if (i < 11) {

                                    $("#page").append("<a class='p_active'>" + i + "</a>");

                                }

                                else {

                                    $("#page").append("<a class='p_active a_hide'>" + i + "</a>");

                                }

                            }

                            $("#page").append("<a class='p_next'>下一页</a>");

                            $("#page").append("<span>共" + pagegount + "页</span>");

                            $(".p_active:first").addClass("a_on");

这里固定了每页显示8条数据

3、为页码添加样式:

 .p_active {

            display: block;

            float: left;

            width: auto;

            padding: 0px 5px;

            height: 20px;

            text-align: center;

            line-height: 20px;

            border: 1px solid #0094ff;

            cursor: pointer;

            margin: 0px 3px;

            border-radius: 3px;

        }

        .p_provied, .p_next {

            display: block;

            float: left;

            width: 60px;

            height: 20px;

            text-align: center;

            line-height: 20px;

            border: 1px solid #0094ff;

            cursor: pointer;

            border-radius: 3px;

        }

        .a_hide {

            display: none;

        }

        .a_on {

            background-color: #0094ff;

            color: #fff;

        }

        a.p_next:hover, a.p_provied:hover, a.p_active:hover {

            background-color: #0094ff;

            color: #fff;

        }

4、重要的来了:页码点击的切换方法:

 //每页单击事件

                            $(".p_active").click(function () {

                                var a_index = $(this).index();//获取当前页码的下标

                                var _text = $(this).text();//获取当前页码的页码数

                                $(".p_active").removeClass("a_on");//移除所有页码的选中样式

                                $(this).addClass("a_on");//为当前页码添加选中样式

                                if (a_index >= 10) {

                                    $("#page a").eq(a_index - 8).addClass("a_hide");

                                    $("#page a").eq(a_index - 1).removeClass("a_hide");

                                    $("#page a").eq(a_index + 1).removeClass("a_hide");

                                    if (a_index + 8 == $(".p_next").index()) {

                                        return;

                                    } else {

                                        $("#page a").eq(a_index + 8).addClass("a_hide");

                                    }

                                }

                                else {

                                    $(".p_active").addClass("a_hide");

                                    for (var k = 1; k <= 10; k++) {

                                        $("#page a").eq(k).removeClass("a_hide");

                                    }

                                }

                                var cardtype =<%=Session["cardtype"]%>

                                $.post("handler/ListPage.ashx", { "cardtype": cardtype, "pagesize": _text }, function (data) {

                                    $(".boxcon2").html(data);

                                    tztitle();

                                    //帖子类型

                                    type();

                                    //图片

                                    img();

                                    tzname();

                                });

                            });

                            //下一页

                            $(".p_next").click(function () {

                                var p_index = $(".a_on").index();//获取选中的页面的index

                                if (p_index == parseInt($(".p_active").length)) {

                                    return;

                                }

                                else {

                                    var p_nextindex = p_index;

                                    var p_text = $(".p_active").eq(p_nextindex).text();//获取选中的页面的的值

                                    if (p_nextindex > 9) {

                                        $(".p_active").eq(p_nextindex - 9).addClass("a_hide");

                                        $(".p_active").eq(p_nextindex).removeClass("a_hide");

                                    }

                                    $(".p_active").eq(p_index).addClass("a_on").siblings(".p_active").removeClass("a_on"); 

                            }

                            });

                            //上一页

                            $(".p_provied").click(function () {

                                var p_index = $(".a_on").index();//获取选中的页面的index

                                var p_nextindex = p_index - 2;

                                if (p_index == 1) {

                                    return;

                                }

                                else {

                                    if (p_index > 9) {

                                        $(".p_active").eq(p_index).addClass("a_hide");

                                        $(".p_active").eq(p_index - 9).removeClass("a_hide");

                                    }

});

5、数据交互ajax:

 var cardtype =<%=Session["cardtype"]%>

                                $.post("handler/ListPage.ashx", { "cardtype": cardtype, "pagesize": _text }, function (data) {

                                    $(".boxcon2").html(data);

                                    tztitle();

                                    //帖子类型

                                    type();

                                    //图片

                                    img();

                                    tzname();

                                });

6、后台ashx:

asp.net实现简单的分页插件

asp.net实现简单的分页插件

asp.net实现简单的分页插件

7、结束

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:162
  • 阅读量:98
  • 阅读量:170
  • 阅读量:142
  • 阅读量:81
  • 猜你喜欢