利用AJAX實(shí)現(xiàn)無刷新數(shù)據(jù)分頁
以前在使用Asp.Net的時(shí)候用過GridView這個(gè)控件,這個(gè)控件自帶分頁的功能,雖然很丑,但是功能還是很強(qiáng)大的。這里呢,給大家展示一下更加給力的方式——利用AJAX無刷新直接從服務(wù)器獲取數(shù)據(jù)分頁。
一、實(shí)現(xiàn)過程
注意:一下的內(nèi)容都是在服務(wù)器內(nèi)使用的。
首先要在服務(wù)器的路徑下建立幾個(gè)文件,比如,page1.txt,page2.txt,page3.txt。
每個(gè)文件中放入數(shù)組,如下:

圖一 頁面一的內(nèi)容
前臺(tái)HTML代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>AJAX實(shí)現(xiàn)分頁、</title>
<script src="ajax.js"></script>
<script>
window.onload=function ()
{
var oUl=document.getElementById('ul1');
var aBtn=document.getElementsByTagName('a');
var i=0;
for(i=0;i<aBtn.length;i++)
{
//給每一個(gè)按鈕附一個(gè)初值索引
aBtn[i].index=i;
aBtn[i].onclick=function ()
{
//調(diào)用AJAX函數(shù)
ajax('page'+(this.index+1)+'.txt', function (str){
//獲得其中的數(shù)據(jù)
var aData=eval(str);
oUl.innerHTML='';
for(i=0;i<aData.length;i++)
{
var oLi=document.createElement('li');
oLi.innerHTML='<strong>'+aData[i].user+'</strong><i>'+aData[i].pass+'</i>';
oUl.appendChild(oLi);
}
});
};
}
};
</script>
</head>
<body>
<ul id="ul1">
</ul>
<a href="javascript:;">1</a>
<a href="javascript:;">2</a>
<a href="javascript:;">3</a>
</body>
</html>
封裝的AJAX ,JavaScript代碼:
/*
AJAX封裝函數(shù)
url:系統(tǒng)要讀取文件的地址
fnSucc:一個(gè)函數(shù),文件取過來,加載完會(huì)調(diào)用
*/
function ajax(url, fnSucc, fnFaild)
{
//1.創(chuàng)建Ajax對(duì)象
var oAjax=null;
if(window.XMLHttpRequest)
{
oAjax=new XMLHttpRequest();
}
else
{
oAjax=new ActiveXObject("Microsoft.XMLHTTP");
}
//2.連接服務(wù)器
oAjax.open('GET', url, true);
//3.發(fā)送請(qǐng)求
oAjax.send();
//4.接收服務(wù)器的返回
oAjax.onreadystatechange=function ()
{
if(oAjax.readyState==4) //完成
{
if(oAjax.status==200) //成功
{
fnSucc(oAjax.responseText);
}
else
{
if(fnFaild)
fnFaild(oAjax.status);
}
}
};
}
最終實(shí)現(xiàn)效果:
圖二 展示效果
二、小結(jié)
AJAX這個(gè)還是要多多嘗試的,還要多多的練習(xí)。分頁是很好的想法,可以提高訪問的速度,很好的方法,以后還會(huì)更好的給大家?guī)硎斋@。
- Javascript vue.js表格分頁,ajax異步加載數(shù)據(jù)
- vue.js 表格分頁ajax 異步加載數(shù)據(jù)
- php+ajax實(shí)現(xiàn)無刷新數(shù)據(jù)分頁的辦法
- jQuery+Ajax+PHP+Mysql實(shí)現(xiàn)分頁顯示數(shù)據(jù)實(shí)例講解
- JQuery+Ajax實(shí)現(xiàn)數(shù)據(jù)查詢、排序和分頁功能
- C#基于數(shù)據(jù)庫存儲(chǔ)過程的AJAX分頁實(shí)例
- Ajax讀取數(shù)據(jù)之分頁顯示篇實(shí)現(xiàn)代碼
- AspNetAjaxPager,Asp.Net通用無刷新Ajax分頁控件,支持多樣式多數(shù)據(jù)綁定
- xml分頁+ajax請(qǐng)求數(shù)據(jù)源+dom取結(jié)果實(shí)例代碼
- ajax實(shí)現(xiàn)數(shù)據(jù)分頁查詢
相關(guān)文章
Ajax獲取回調(diào)函數(shù)無法賦值給全局變量的問題
這篇文章主要介紹了Ajax獲取回調(diào)函數(shù)無法賦值給全局變量的問題,需要的朋友可以參考下2018-06-06
PJBLOG中用到的ajaxjs.幾個(gè)簡單的函數(shù)
PJBLOG中用到的ajaxjs.幾個(gè)簡單的函數(shù)...2007-12-12
Ajax初試之讀取數(shù)據(jù)篇實(shí)現(xiàn)代碼
上次我們講了ajax開始準(zhǔn)備篇,做好了基本的ajax準(zhǔn)備工作以后.我們開始牛刀小試一下:ajax初試之讀取數(shù)據(jù)篇.2010-10-10
使用ajax技術(shù)無刷新動(dòng)態(tài)調(diào)用股票信息
新浪的財(cái)金頻道一直感覺做得很好。但由于最近網(wǎng)速慢的緣故,查看股票信息時(shí)網(wǎng)頁老是打不開。這幾天一直在研究ajax,于是用jquery自己做了一個(gè)自動(dòng)讀取新浪股票實(shí)時(shí)數(shù)據(jù)的頁面。2008-11-11
基于Spring Boot利用 ajax實(shí)現(xiàn)上傳圖片功能
這篇文章主要介紹了Spring Boot利用 ajax實(shí)現(xiàn)上傳圖片功能,本文圖文實(shí)例相結(jié)合,給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11
簡單實(shí)體類和xml文件的相互轉(zhuǎn)換方法
下面小編就為大家?guī)硪黄唵螌?shí)體類和xml文件的相互轉(zhuǎn)換方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-08-08

