今天我們要用ajax做一個分頁:
實現Ajax分頁:
如果可以的話加上查詢條件
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Document</title> <script src="jquery-1.11.2.min.js"></script> <style type="text/css"> .dangqian{ background-color:#69F} </style> </head> <body> <div> <input type="text" id="key" /> <input type="button" value="查詢" id="chaxun" /> </div> <table width="50%" border="1" bordercolordark="0" bordercolorlight="0"> <tr> <td>代號</td> <td>名稱</td> <td>父級代號</td> </tr> <tbody id="neirong"><!--顯示內容--> </tbody> </table> <div id="fenyexinxi"> </div> </body> <script type="text/javascript"> var page = 1;//定個變量,當前要顯示的頁 Load();//加載數據 Loadfenyexinxi();//加載分頁信息 //查詢 $("#chaxun").click(function(){ page = 1; Load();//加載數據 Loadfenyexinxi();//加載分頁信息 }) function Load() { var key = $("#key").val();//查詢條件。用戶輸入的內容 $.ajax({ url:"chuli.php", data: { page: page, key: key },//傳2個參數一當前頁2關鍵字也就是查詢條件 type:"POST", dataType:"JSON", success: function(data){//匿名函數 var str = "";//這個將來要放表格顯示的 for(var k in data)//通過K可以獲得每一條數據 {//加載數據完成 str +="<tr><td>"+data[k].AreaCode+"</td><td>"+data[k].AreaName+"</td><td>"+data[k].ParentAreaCode+"</td></tr>";//要顯示的內容,代號、名稱父級代號 } $("#neirong").html(str); } }); } function Loadfenyexinxi()//分頁信息 { var str = ""; var minys = 1;//最小頁數 var maxys = 1;//最大頁數 var key = $("#key").val();//取關鍵字用於傳到zys頁面用 $.ajax({ async:false, type:"POST", url:"fenye.php", data:{key:key}, dataType:"TEXT", success:function(d){ maxys = d; } }); str += "<span style='text-decoration:underline; cursor:pointer'>總共:"+maxys+"頁</span> "; str += "<span id='prev' style='text-decoration:underline; cursor:pointer'>上一頁</span>"; for(var i=page-2;i<page+3;i++) { if(i>=minys && i<=maxys) { if(i==page) { str += "<span style='text-decoration:underline; cursor:pointer' class='dangqian' bs='"+i+"'>"+i+"</span> "; } else { str += "<span style='text-decoration:underline; cursor:pointer' class='list' bs='"+i+"'>"+i+"</span> "; } } } str += "<span style='text-decoration:underline; cursor:pointer' id='next'>下一頁</span>"; $("#fenyexinxi").html(str); $("#prev").click(function(){ page = page-1; if(page<1) { page=1; } Load(); Loadfenyexinxi(); }) $("#next").click(function(){ page = page+1; if(page>maxys) { page=maxys; } Load(); Loadfenyexinxi(); }) $(".list").click(function(){ page = parseInt($(this).attr("bs")); Load(); Loadfenyexinxi(); }) } </script> </html>
上面是這頁面:test.php
<?php include("DBDA.class.php"); $db = new DBDA(); //把上個頁面的2個值傳過來 $page = $_POST["page"];//當前頁 $key = $_POST["key"];//條件,關鍵字 $num = 20;//定義,一頁裡多少條數據, $tiaoshu = ($page-1)*$num;//$tiaoshu跳過多少條($page-1)*$num現在$num是20條 //寫$SQL語句 $sql = "select * from chinastates where areaname like '%{$key}%' limit {$tiaoshu},{$num}";//根據關鍵字查like '%{$tiaojian}%'。 echo $db->JSONQuery($sql);
上面是處理頁面:chuli.php:
<?php include("DBDA.class.php"); $db = new DBDA(); $key = $_POST["key"]; $num = 20; $sql = "select count(*) from chinastates where areaname like '%{$key}%'"; $zts = $db->StrQuery($sql); echo ceil($zts/$num);
上面是分頁頁面:fenye.php
下面就是我們的顯示效果:
隨著點擊下一頁,下面會顯示5頁,並且是當前頁左右各兩個頁面,每頁的顯示信息條數可以自己調整。
在上方的文本框中輸入關鍵詞會顯示出相關的信息。這就是我們用ajax做的分頁。
以上所述是小編給大家介紹的Ajax實現無刷新分頁實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!