麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

jquery分頁優化操作實例分析

2019-11-19 10:59:31
字體:
來源:轉載
供稿:網友

本文實例講述了jquery分頁優化操作。分享給大家供大家參考,具體如下:

前言

上次寫了博客 jquery分頁顯示,文章的jquery分頁方式雖然可以通過js實現分頁,但是也存在明顯的弊端。

該篇文章的思路是,每次通過ajax請求獲取到記錄,然后通過判斷當前頁面,顯示或者隱藏記錄,以實現分頁效果。但是這種方式,每次切換分頁都需要從新請求一次記錄,頻繁的查詢數據庫。

下面提供一種,只需要加載一次(查詢一次數據庫)就能實現分頁的思路。我們加載記錄之后,生成所有的分頁并隱藏,然后默認顯示第一頁。切換分頁通過,分頁div的顯示和隱藏來實現。

創建數據庫語句

CREATE TABLE `news` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, `time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8

記錄查詢頁面

test.php

<?phpheader("Content-Type:text/html;Charset=utf-8");$mysqli = new mysqli("localhost","root","","test");$mysqli->set_charset("utf8");$query = $mysqli->query("SELECT * FROM news");$res = $query->fetch_all(MYSQLI_ASSOC);echo json_encode($res);

分頁顯示頁面

index.html

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>Title</title>  <style type="text/css">    .page{      width: 1000px;      margin-left: auto;      margin-right: auto;      text-align:center;      display:none;    }  </style></head><body>  <div id="listTag">  </div></body><script type="text/javascript" src="http://localhost/jquery/jquery.js"></script><script type="text/javascript">  $(function(){    var avgNum = 18; //每頁顯示18條記錄    $.ajax({      type:"GET",      url:"http://localhost/test.php",      dataType:"json",      success:function(data){        var totalPage = data.length;  //獲取總的記錄數        var pageNum = Math.ceil(totalPage/avgNum); //計算得到頁數        var content = '';        for(var i=1;i<=pageNum;i++){          content += '<div id="page'+i+'" class="page"><ul>';          for(var j=((i-1)*avgNum);j<(i*avgNum)&&j<totalPage;j++){            content += '<li>'+data[j].title+'</li>';          }          content += '</ul>';          content += '<hr/><div>';          //前一頁          if(i == 1){            content += '<<  ';          }else{            content += '<a href="javascript:showPage('+(i-1)+')" rel="external nofollow" rel="external nofollow" ><<</a>  ';          }          //后一頁          if(i == pageNum){            content += '>>  ';          }else{            content += '<a href="javascript:showPage('+(i+1)+')" rel="external nofollow" rel="external nofollow" >>></a>  ';          }          content += '</div></div>';        }        //生成所有的div,并隱藏        $("#listTag").append(content);        showPage(1);      }    });  });  function showPage(num){    $("#page"+num).show();    $("#page"+num).siblings().hide();  }</script></html>

分頁效果:

這里寫圖片描述

分頁樣式二

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>Title</title>  <style type="text/css">    .page{      width: 1000px;      margin-left: auto;      margin-right: auto;      text-align:center;      display:none;    }    .active{      color:red;    }  </style></head><body>  <div id="listTag">  </div></body><script type="text/javascript" src="http://localhost/jquery/jquery.js"></script><script type="text/javascript">  $(function(){    var avgNum = 18; //每頁顯示18條記錄    $.ajax({      type:"GET",      url:"http://localhost/test.php",      dataType:"json",      success:function(data){        var totalPage = data.length;  //獲取總的記錄數        var pageNum = Math.ceil(totalPage/avgNum); //計算得到頁數        var content = '';        for(var i=1;i<=pageNum;i++){          content += '<div id="page'+i+'" class="page"><ul>';          for(var j=((i-1)*avgNum);j<(i*avgNum)&&j<totalPage;j++){            content += '<li>'+data[j].title+'</li>';          }          content += '</ul>';          content += '<hr/><div>';          //前一頁          if(i == 1){            content += '<<  ';          }else{            content += '<a href="javascript:showPage('+(i-1)+')" rel="external nofollow" rel="external nofollow" ><<</a>  ';          }          //顯示所有的頁碼          for(var p=1;p<=pageNum;p++){            content += '<a href="javascript:showPage('+p+')" rel="external nofollow" class="p'+p+'">'+p+'</a>  ';          }          //后一頁          if(i == pageNum){            content += '>>  ';          }else{            content += '<a href="javascript:showPage('+(i+1)+')" rel="external nofollow" rel="external nofollow" >>></a>  ';          }          content += '</div></div>';        }        //生成所有的div,并隱藏        $("#listTag").append(content);        showPage(1);      }    });  });  function showPage(num){    $("#page"+num).show();    $("#page"+num).siblings().hide();    $(".p"+num).addClass("active");    $(".p"+num).siblings().removeClass("active");  }</script></html>

顯示效果

這里寫圖片描述

更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jQuery擴展技巧總結》、《jQuery表格(table)操作技巧匯總》、《jQuery常見經典特效匯總》、《jquery選擇器用法總結》及《jQuery常用插件及用法總結

希望本文所述對大家jQuery程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 二区视频| 国产精品国产三级国产在线观看 | 奶子吧naiziba.cc免费午夜片在线观看 | 免费一级毛片电影 | 深夜免费观看视频 | 一级免费黄色免费片 | 国产日韩在线观看一区 | 久久青草影院 | 久精品久久 | 免费毛片播放 | 成人福利在线播放 | 新久草视频 | 1024亚洲天堂 | 国产在线精品一区二区三区不卡 | 免费a视频在线观看 | 国产91丝袜在线播放0 | 欧美国产精品一区二区 | 黄色特级一级片 | 国产91在线亚洲 | www.com超碰 | 欧美wwwwww | 亚洲日本韩国在线观看 | www.成人免费 | 免费观看一级 | 九九精品视频观看 | 高潮激情aaaaa免费看 | 三人弄娇妻高潮3p视频 | 视频一区二区三区在线播放 | av手机在线电影 | 成人午夜视频免费看 | 99热99精品 | 粉嫩粉嫩一区二区三区在线播放 | 欧美成人免费一级 | 性生活视频软件 | 亚洲第一成av人网站懂色 | 91午夜在线观看 | 久久成人激情视频 | 欧美乱论 | 91在线精品亚洲一区二区 | av在线免费观看播放 | xnxx 美女19 |