使用jquery对数组进行分页,或者是对ul li中的数据进行隐藏显示

寻技术 JQuery 2023年07月11日 117

 

这两天在做项目的时候用到了对数组进行分页,在网上搜索了一篇博客,是对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 >
</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>

 以上是我是先的全部代码。上面的功能主要就是通过隐藏也控制页面的现实。

关闭

用微信“扫一扫”