이번에는 새로 고치지 않는 데이터 페이징을 구현하는 AJAX를 소개하겠습니다. AJAX가 새로 고치지 않는 데이터 페이징을 구현하는 데 있어 주의 사항은 무엇입니까? 다음은 실제 사례입니다.
저는 이전에 Asp.Net을 사용할 때 GridView 컨트롤을 사용해 본 적이 있습니다. 이 컨트롤에는 자체 페이징 기능이 있지만 여전히 매우 강력합니다. 여기서는 AJAX를 사용하여 새로 고치지 않고 서버에서 직접 데이터 페이지 매김을 가져오는 더욱 강력한 방법을 보여 드리겠습니다.
1. 구현 프로세스
참고: 서버 내에서는 다음 콘텐츠가 사용됩니다.
먼저 서버 경로에 page1.txt, page2.txt, page3.txt 등 여러 파일을 생성합니다.
다음과 같이 각 파일에 배열을 넣습니다.
[{user:'blue',pass:'123'},{user:'aaa',pass:'dsfaa'},{user:'Ares',pass:'12346'}]
그림 1 페이지 1의 콘텐츠
프런트 엔드 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实现分页、</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++) { //给每一个按钮附一个初值索引 aBtn[i].index=i; aBtn[i].onclick=function () { //调用AJAX函数 ajax('page'+(this.index+1)+'.txt', function (str){ //获得其中的数据 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封装函数 url:系统要读取文件的地址 fnSucc:一个函数,文件取过来,加载完会调用 */ function ajax(url, fnSucc, fnFaild) { //1.创建Ajax对象 var oAjax=null; if(window.XMLHttpRequest) { oAjax=new XMLHttpRequest(); } else { oAjax=new ActiveXObject("Microsoft.XMLHTTP"); } //2.连接服务器 oAjax.open('GET', url, true); //3.发送请求 oAjax.send(); //4.接收服务器的返回 oAjax.onreadystatechange=function () { if(oAjax.readyState==4) //完成 { if(oAjax.status==200) //成功 { fnSucc(oAjax.responseText); } else { if(fnFaild) fnFaild(oAjax.status); } } }; }
최종 효과:
그림 2 디스플레이 효과
2. 요약
AJAX는 여전히 많은 시도와 연습이 필요합니다. 페이지네이션은 좋은 아이디어이며, 접근 속도를 향상시킬 수 있고, 좋은 방법이며, 미래에 모든 사람에게 더 나은 혜택을 가져다 줄 것입니다.
이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 자료:
새 양식을 열 때 브라우저가 ajax 콜백을 가로채는 것을 방지하는 방법
위 내용은 AJAX는 새로 고치지 않고 데이터 페이징을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!