Ajax實(shí)現(xiàn)無(wú)刷新分頁(yè)實(shí)例代碼
今天我們要用ajax做一個(gè)分頁(yè):
實(shí)現(xiàn)Ajax分頁(yè):
如果可以的話加上查詢條件
- 找一張表做分頁(yè)
- 分頁(yè)不使用page類
- 頁(yè)面不用刷新
- Ajax加載數(shù)據(jù)
<!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>代號(hào)</td> <td>名稱</td> <td>父級(jí)代號(hào)</td> </tr> <tbody id="neirong"><!--顯示內(nèi)容--> </tbody> </table> <div id="fenyexinxi"> </div> </body> <script type="text/javascript"> var page = 1;//定個(gè)變量,當(dāng)前要顯示的頁(yè) Load();//加載數(shù)據(jù) Loadfenyexinxi();//加載分頁(yè)信息 //查詢 $("#chaxun").click(function(){ page = 1; Load();//加載數(shù)據(jù) Loadfenyexinxi();//加載分頁(yè)信息 }) function Load() { var key = $("#key").val();//查詢條件。用戶輸入的內(nèi)容 $.ajax({ url:"chuli.php", data: { page: page, key: key },//傳2個(gè)參數(shù)一當(dāng)前頁(yè)2關(guān)鍵字也就是查詢條件 type:"POST", dataType:"JSON", success: function(data){//匿名函數(shù) var str = "";//這個(gè)將來(lái)要放表格顯示的 for(var k in data)//通過(guò)K可以獲得每一條數(shù)據(jù) {//加載數(shù)據(jù)完成 str +="<tr><td>"+data[k].AreaCode+"</td><td>"+data[k].AreaName+"</td><td>"+data[k].ParentAreaCode+"</td></tr>";//要顯示的內(nèi)容,代號(hào)、名稱父級(jí)代號(hào) } $("#neirong").html(str); } }); } function Loadfenyexinxi()//分頁(yè)信息 { var str = ""; var minys = 1;//最小頁(yè)數(shù) var maxys = 1;//最大頁(yè)數(shù) var key = $("#key").val();//取關(guān)鍵字用于傳到zys頁(yè)面用 $.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+"頁(yè)</span> "; str += "<span id='prev' style='text-decoration:underline; cursor:pointer'>上一頁(yè)</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'>下一頁(yè)</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>
上面是這頁(yè)面:test.php
<?php include("DBDA.class.php"); $db = new DBDA(); //把上個(gè)頁(yè)面的2個(gè)值傳過(guò)來(lái) $page = $_POST["page"];//當(dāng)前頁(yè) $key = $_POST["key"];//條件,關(guān)鍵字 $num = 20;//定義,一頁(yè)里多少條數(shù)據(jù), $tiaoshu = ($page-1)*$num;//$tiaoshu跳過(guò)多少條($page-1)*$num現(xiàn)在$num是20條 //寫$SQL語(yǔ)句 $sql = "select * from chinastates where areaname like '%{$key}%' limit {$tiaoshu},{$num}";//根據(jù)關(guān)鍵字查like '%{$tiaojian}%'。 echo $db->JSONQuery($sql);
上面是處理頁(yè)面: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);
上面是分頁(yè)頁(yè)面:fenye.php
下面就是我們的顯示效果:
隨著點(diǎn)擊下一頁(yè),下面會(huì)顯示5頁(yè),并且是當(dāng)前頁(yè)左右各兩個(gè)頁(yè)面,每頁(yè)的顯示信息條數(shù)可以自己調(diào)整。
在上方的文本框中輸入關(guān)鍵詞會(huì)顯示出相關(guān)的信息。這就是我們用ajax做的分頁(yè)。
以上所述是小編給大家介紹的Ajax實(shí)現(xiàn)無(wú)刷新分頁(yè)實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Bootstrap Paginator分頁(yè)插件與ajax相結(jié)合實(shí)現(xiàn)動(dòng)態(tài)無(wú)刷新分頁(yè)效果
- 實(shí)例代碼講解ajax實(shí)現(xiàn)的無(wú)刷新分頁(yè)
- php+ajax實(shí)現(xiàn)無(wú)刷新分頁(yè)
- php+ajax實(shí)現(xiàn)無(wú)刷新數(shù)據(jù)分頁(yè)的辦法
- jQuery+Ajax實(shí)現(xiàn)無(wú)刷新分頁(yè)
- jquery插件pagination實(shí)現(xiàn)無(wú)刷新ajax分頁(yè)
- Ajax無(wú)刷新分頁(yè)的性能優(yōu)化方法
相關(guān)文章
Ajax在請(qǐng)求過(guò)程中顯示進(jìn)度的簡(jiǎn)單實(shí)現(xiàn)
ajax技術(shù)在web應(yīng)用中使用非常頻繁,本文以asp.net MVC為示例,提供一種簡(jiǎn)單的實(shí)現(xiàn)方式。ajax在請(qǐng)求過(guò)程中顯示進(jìn)度條,是怎么實(shí)現(xiàn)的呢?本文通過(guò)代碼和文字說(shuō)明相結(jié)合的方式分享給大家。2015-09-09AJax 學(xué)習(xí)筆記二(onreadystatechange的作用)
初次接觸onreadystatechange這個(gè)事件句柄不知道有何用處,看過(guò)一篇文章的介紹之后,終有大致所了解。2010-04-04原生ajax和iframe框架實(shí)現(xiàn)圖片文件上傳的兩種方式
這篇文章主要為大家詳細(xì)介紹了原生ajax和iframe框架實(shí)現(xiàn)圖片文件上傳的兩種方式,感興趣的小伙伴們可以參考一下2016-04-04Spring MVC+ajax進(jìn)行信息驗(yàn)證的方法
AJAX 不是新的編程語(yǔ)言,而是一種使用現(xiàn)有標(biāo)準(zhǔn)的新方法。這篇文章主要介紹了Spring MVC+ajax進(jìn)行信息驗(yàn)證,需要的朋友可以參考下2019-09-09比getjson好的底層函數(shù)是哪個(gè)有什么優(yōu)點(diǎn)
比getjson好的底層函數(shù)優(yōu)點(diǎn)在于如果網(wǎng)絡(luò)出問(wèn)題了,可以通過(guò)error方法來(lái)告訴用戶出錯(cuò),需要的朋友可以參考下2014-02-02javascript請(qǐng)求servlet實(shí)現(xiàn)ajax示例(分享)
下面小編就為大家?guī)?lái)一篇javascript請(qǐng)求servlet實(shí)現(xiàn)ajax示例(分享)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06在實(shí)戰(zhàn)中可能碰到的幾種ajax請(qǐng)求方法詳解
這篇文章主要給大家分享了在實(shí)戰(zhàn)中可能碰到的幾種ajax請(qǐng)求方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-03-03AJAX分頁(yè)效果簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了AJAX分頁(yè)效果的簡(jiǎn)單實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06簡(jiǎn)單實(shí)現(xiàn)Ajax無(wú)刷新分頁(yè)效果
這篇文章主要為大家詳細(xì)介紹了簡(jiǎn)單實(shí)現(xiàn)Ajax無(wú)刷新分頁(yè)效果的代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05