使用jquery对数组进行分页,或者是对ul li中的数据进行隐藏显示
这两天在做项目的时候用到了对数组进行分页,在网上搜索了一篇博客,是对ul li 中的视频进行分页显示。减少了每次从数据库中读取数据的麻烦
下面先将以下将数组进行分页,
1.首先将说有的数组放在ul li 标签中
$(document).ready(function(){ var data=$("#annex").val(); var datas=data.split(","); var annex=''; var annexSub=''; var annexName=''; for(var i=0;i<datas.length;i++){ annex=datas[i]; annexName=annex.substring(0,annex.indexOf(".")); annexSub=annex.substring(annex.indexOf("."),annex.length); var filType=""; if(annexSub=='.doc'||annexSub=='.docx'){ filType="/FLMG/sysModel/image/doc.jpg"; }else if(annexSub=='.xls'||annexSub=='.xlsx'){ filType="/FLMG/sysModel/image/xls.jpg"; }else if(annexSub=='.zip'||annexSub=='.rar'){ filType="/FLMG/sysModel/image/zip.jpg"; }else if(annexSub=='.ppt'||annexSub=='.pptx'){ filType="/FLMG/sysModel/image/ppt.jpg"; }else if(annexSub=='.pdf'){ filType="/FLMG/sysModel/image/pdf.jpg"; } var msg = "<li><img src='"+filType+"' width="25" height="25" />" + annexName + "</li>"; $("#ul_model").append(msg); } })
ul id="ul_model"> </ul>
上面已经将所有的数组分别插入到页面中,然后对其进行分页显示
http://www.dayday28.com/post/2012-09-11/40039431075 此为我看到的博客,如果对下面的讲述不能理解。请看原文
$("#ul_model ul li:gt(3)").hide();     //初始化,前面4条数据显示,其他数据隐藏
    var data=$("#annex").val();
   var datas=data.split(",");
    var  total= datas.length;   //总数据
   //  var total =$("#ul_model li").index()+1;   另一种计算ul 中li的总数的办法
    var current_page=4;   //每页显示的数据
    var current_num=1;    //当前页数
    var total_page= Math.round(total/current_page);//总页数  
    var next=$(".next");//下一页 
    var prev=$(".prev");//上一页 
    $(".total").text(total_page);//显示总页数 
    $(".current_page").text(current_num);//当前的页数 
    //下一页
    $(.next).click(function(){
        if(current_num==7){
            return false;    //如果大于总的页数,就禁用下一页
        }else{
            $(".current_page").text(++current_num);    //点击下一页时,当前页数加1
            $.each($('#ul_model  li'),function(index,item){
                var start=current_page*(current_num-1);   //其实范围
                var end=current_page*current_num;
                if(index >= start && index < end){//如果索引值是在start和end之间的元素就显示,否则就隐 
                    $(this).show(); 
                }else { 
                    $(this).hide();  
                } 
            });
        }
 });
    //上一页
    $(".prev").click(function(){
        if(current_num==1){
            return false;
        }else{
            $(".current_page").text(--current_num);
            $.each($('#ul_model  li'),function(index,item){
                var start=current_page*(current_num-1);   //其实范围
                var end=current_page*current_num;
                if(index >= start && index < end){//如果索引值是在start和end之间的元素就显示,否则就隐 
                    $(this).show(); 
                }else { 
                    $(this).hide();  
                } 
            });
        }
    })
 <span class="page_box">
                <a class="prev">上一页</a><span class="num"><span class="current_page">1</span><span style="padding:0 3px;">/</span><span class="total"></span></span><a class="next">下一页</a>
            </span>
以上是我是先的全部代码。上面的功能主要就是通过隐藏也控制页面的现实。
                    
                
                
            
        
浙公网安备 33010602011771号