分页2

作者: 唐人不自醉 | 来源:发表于2018-11-18 20:39 被阅读6次

java开发中,分页一直是一个重要部分,不过大部分人都使用分页插件,下面的分页实例供大家参考,是用纯js代码编写的分页,能够进一步帮助大家理解分页的原理和思路。

HTML代码:

<div>
    <table border="1" cellspacing="0" cellpadding="0" style="width:400px;text-align: center;">
    <tr><th>部门</th><th>姓名</th><th>年龄</th><th>性别</th><th>民族</th></tr>
    <tbody id="pageInfo">
        <tr><td>开发部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>开发部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>开发部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>管理部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>开发部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>开发部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>开发部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>应用部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>开发部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
        <tr><td>市场部</td><td>强哥</td><td>22</td><td>男</td><td>汉族</td></tr>
    </tbody>
    </table>
    <div id="pagination" style="margin-top: 10px;height: 35px;">
    <a id="firPage" onclick="firstPage()" style="margin-left: 0px;width: 35px;">首页</a>
    <a id="prePage" onclick="prevPage()">上一页</a>
    <a id="nexPage" onclick="pnextPage()">下一页</a>
    <a id="lasPage" onclick="lastPage()" style="width: 35px;">尾页</a>
    <input id="numPage" style="width: 40px;margin-left: 10px;height: 16px;" />
    </div>
</div>

CSS代码:

<style>
    #pagination a{
        border: 1px solid #000000;
        width: 50px;
        height:20px;
        float: left;
        margin-left: 10px;cursor: pointer;
    }
</style>

js代码:

<script src="../js/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
var departmentInfo = document.getElementById("pageInfo");  /*获取table中的内容*/
var totalRow = departmentInfo.rows.length;   /*计算出总条数(这种方法用来获取table行数,获取列数用var cells = departmentsInfo.rows[0].cells.length;*/
var pagesize = 3;   /*每页条数*/
var totalPage = Math.ceil(totalRow/pagesize);  /*计算出总页数*/
var currentPage;
var startRow;
var lastRow;
function pagination(i){
    currentPage = i;/*当前页*/
    document.getElementById("numPage").value="第"+currentPage+"页";   /*显示页码*/
    startRow = (currentPage-1)*pagesize;/*每页显示第一条数据的行数*/
    lastRow = currentPage*pagesize;/*每页显示的最后一条数据的行数,因为表头也算一行,所以这里不需要减1,这种情况以自己的实际情况为准*/
    if(lastRow>totalRow){
    lastRow=totalRow;/*如果最后一页的最后一条数据显示的行数大于总条数,那么就让最后一条的行数等于总条数*/
    }
    for(var i = 0;i<totalRow;i++){   /*将数据遍历出来*/
        var hrow = departmentInfo.rows[i];
    if(i>=startRow&&i<lastRow){
            hrow.style.display="table-row";
        }else{
        hrow.style.display="none";
        }
    }
}
$(function(){
    firstPage();
});
function firstPage(){
    var i = 1;
    pagination(i);
}
function prevPage(){
    var i= currentPage-1;
    if(i<1){
    i=currentPage;
    }
    pagination(i);
}
function pnextPage(){
    var i= currentPage+1;
    if(i>totalPage){
    i= currentPage;
    }
    pagination(i);
}
function lastPage(){
    var i = totalPage;
    pagination(i);
}
</script>

还有个分页 ,是个牛人写的
代码在 Github上了,有兴趣的可以看下~

相关文章

网友评论

      本文标题:分页2

      本文链接:https://www.haomeiwen.com/subject/fsxnfqtx.html