首页 > 代码库 > js分页

js分页

<!DOCTYPE html><html><head>    <title>js分页</title>    <style type="text/css">    /*表格样式*/    .tbData {        border-collapse:collapse;        border-spacing:0px;        border:solid 3px #ddd;        font-size:14px;        font-family:Consolas;        color:#333;        background-color:white;        margin:10px 0px;    }    .tbData th, td {        border:solid 1px #ddd;        padding:5px 8px;    }    .tbData th {        border-bottom:solid 2px #ddd;        background-color:#eef;        font-weight:normal;        color:blue;    }    #divData .tbData tr:hover {        background-color:#fef;    }    /*分页样式*/    #divPage {        text-align:left;        margin:10px 0px;        height:30px;        font-size:12px;    }        #divPage a, #divPage span {        text-decoration:none;        color:Blue;        background-color:White;        padding:3px 5px;        font-family:Consolas;        text-align:center;        border:solid 1px #ddd;        display:inline-block;    }        #divPage span {        color:gray;    }            #divPage a:hover {        color:Red;    }    #divPage .aCur {        background-color:green;        color:White;        font-weight:bold;    }    </style>    <script type="text/javascript">    //js表格 生成表格代码    //arrTh 表头信息    //arrTr 数据    var getTable = function(arrTh, arrTr){        var s = <table class="tbData">;        s += <tr>;        for(var i=0; i<arrTh.length; i++) {            s += <th> + arrTh[i] + </th>;        }        s += </tr>;        for(var i=0; i<arrTr.length; i++) {            s += <tr>;            for(var j=0; j<arrTr[i].length; j++) {                s += <td> + arrTr[i][j] + </td>;            }            s += </tr>;        }        s += </table>;        return s;    }        //js分页    //el:分页容器 count:总记录数 pageStep:每页显示多少个 pageNum:第几页 fnGo:分页跳转函数    var jsPage = function(el, count, pageStep, pageNum, fnGo) {        this.getLink = function(fnGo, index, pageNum, text) {            var s = <a href="http://www.mamicode.com/#p + index + " onclick=" + fnGo + ( + index + );" ;            if(index == pageNum) {                s += class="aCur" ;            }            text = text || index;            s += > + text + </a> ;                        return s;        }                //总页数        var pageNumAll = Math.ceil(count / pageStep);        if (pageNumAll == 1) {            divPage.innerHTML = ‘‘;            return;        }        var itemNum = 5; //当前页左右两边显示个数        pageNum = Math.max(pageNum, 1);        pageNum = Math.min(pageNum, pageNumAll);        var s = ‘‘;        if (pageNum > 1) {            s += this.getLink(fnGo, pageNum-1, pageNum, 上一页);        } else {            s += <span>上一页</span> ;        }        var begin = 1;        if (pageNum - itemNum > 1) {            s += this.getLink(fnGo, 1, pageNum) + ... ;            begin = pageNum - itemNum;        }        var end = Math.min(pageNumAll, begin + itemNum*2);        if(end == pageNumAll - 1){            end = pageNumAll;        }        for (var i = begin; i <= end; i++) {            s += this.getLink(fnGo, i, pageNum);        }        if (end < pageNumAll) {            s += ...  + this.getLink(fnGo, pageNumAll, pageNum);        }        if (pageNum < pageNumAll) {            s += this.getLink(fnGo, pageNum+1, pageNum, 下一页);        } else {            s += <span>下一页</span> ;        }        var divPage = document.getElementById(el);        divPage.innerHTML = s;    }    //js随机内容    var jsRand = {};    //随机数字    jsRand.int = function(min,max){        return this.show(i, min, max);    }    //随机字符    jsRand.str = jsRand.string = function(min,max){        return this.show(‘‘, min, max);    }    //随机日期    jsRand.date = function(){        return this.show(d);    }    //随机金额    jsRand.money = function(min,max){        return this.show(m, min, max);    }    //随机汉字    jsRand.ch = function(min,max){        return this.show(ch, min, max);    }    jsRand.show = function(type,min,max) {        var str;        if(type == i) {            str = this.rand(min, max);        } else if(type == m) {            str =  + this.rand(min, max) + .00;        } else if(type == d) {            str = this.rand(1990,2020) + -;            str += this.rand(1,12,2) + -;            str += this.rand(1,31,2) +  ;            str += this.rand(0,23,2) + :;            str += this.rand(1,59,2);        } else {            min = min||0;            max = max||10;            str = ‘‘;            var len = this.rand(min, max);            for(var i=0; i<len; i++) {                var iChar = this.rand(48, 122);                if(type == ch) {                    iChar = this.rand(19968, 40869);                }                var chr = String.fromCharCode(iChar);                chr = chr.replace(/&/g,"&amp;")                        .replace(/</g,"&lt;")                        .replace(/>/g,"&gt;")                        .replace(/ /g,"&nbsp;")                        .replace(//g,"&apos;")                        .replace(/"/g,"&quot;");                str += chr;            }        }                return str;    }    jsRand.rand = function(min, max, len) {        min = min||0;        max = max||1000;        var val = min + Math.round(Math.random() * (max-min));        if(len) {            while((‘‘+val).length < len) {                val = 0 + val;            }        }        return val;    }    </script></head><body><div id="divData" style="font-family:Consolas;"></div><div id="divPage"></div><script type="text/javascript">    function goPage(pageIndex) {        var arrTh = [ID,名称,金额,备注,添加时间];        var arrTr = [];        for(var i=0; i<20; i++)        {            arrTr.push([                jsRand.int(1, 1000),                 jsRand.str(),                 jsRand.money(),                 jsRand.show(ch, 0, 20),                 jsRand.date()            ]);        }        document.getElementById(divData).innerHTML = getTable(arrTh, arrTr);        jsPage(divPage, 800, 10, pageIndex, goPage);    }    goPage(1);</script></body></html>

 

js分页