ajax完美實現兩個網頁 分頁功能的執行個體代碼

來源:互聯網
上載者:User

分頁的首頁

複製代碼 代碼如下:<meta http-equiv="Content-Type" content="text/html; charset=utf8" />
<h1 align="center">武俠小說分頁</h>
<br/>
<script src="jquery-1.4.2.min.js"></script>
<script>
var page='';
function init(page){
document.getElementById("tables").innerHTML='';
var xhr;
if(window.XMLHttpRequest){
xhr = new XMLHttpRequest();
}else if(window.ActiveXObject){
xhr =new ActiveXObject("Microsoft.XMLHTTP")
}
var url="fenye.php";
xhr.open("POST",url,true);
xhr.onreadystatechange=callback;
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
if(page){
xhr.send("page="+page);
}
else {xhr.send("page=1");}
var content;
function callback(){
if(xhr.readyState==4){
if(xhr.status==200){
var json =eval('('+xhr.responseText+')');
//alert(xhr.responseText);
var fenye=json.str;
// alert(fenye);
document.getElementById('div').innerHTML=fenye;
content="<th>ID</th><th>名稱</th><th>作者</th><th>出版社</th><th>ISBN號</th><th>類型</th><th>價格</th>";
for(var i=0;i<json.info.length;i++){
content+="<tr><td>"+json.info[i].id+"</td><td>"+json.info[i].name+"</td><td>"+json.info[i].author+"</td><td>"+json.info[i].publisher+"</td><td>"+json.info[i].isbn+"</td><td>"+json.info[i].type+"</td><td>"+json.info[i].price+"</tr>";
document.getElementById("tables").innerHTML=content;
}
// alert(fenye);
}
}
}
}

</script>

<body onLoad="init()">
<h3 align="center">jquery實現$.ajax的分頁</h3>
<table id="tables" style=" width:500px; height:100px; text-align:center" align="center" border="5" bordercolor="#FF6600">
<th>ID</th><th>名稱</th><th>作者</th><th>出版社</th><th>ISBN號</th><th>類型</th><th>價格</th>
</table>
<table align="center" style="margin-top:15px">
<tr><td>
<td style="colspan:3;height:20">
<div id="div" style="position:absolute; left: 447px; top: 218px; width: 411px; height: 22px;"></div>
</td>
</tr>
</table>
<br />
</body>

分頁的php精華代碼

複製代碼 代碼如下:<?php
//命令模型層處理資料
$link=mysql_connect('localhost','root','') or die("失敗");
mysql_select_db('books',$link) or die("串連資料庫出錯了!");
//每頁顯示記錄數
$pagesize = 2;
//求出總的記錄數
$sql = "select count(*) as total_rows from books";
$result = mysql_query($sql);
$total_rows = mysql_fetch_array($result);
//求總共的頁碼數
$pages = ceil($total_rows[0]/$pagesize);
//當前第幾頁
$page = $_POST['page'];
$strtext = "當前第".$page."頁"."總共".$pages."頁"."共".$total_rows[0]."記錄";
//var_dump($str);
//接下來,我要根據當前點擊的頁碼求出對應的資料
$offset = $pagesize*($page-1);
$sql = "select * from books limit $offset,$pagesize";
mysql_query("set names utf8");
$res=mysql_query($sql);

$rows=array();
while($row=mysql_fetch_assoc($res)){
$rows[]=$row;
}
$pageInfo = $rows;
//echo json_encode($pageInfo);
//var_dump($pageInfo);
//將獲得資料連結,後返回
$first=1;
$prev=$page-1;
$next=$page+1;
$last=$pages;

//命令視圖層顯示資料
$first_a = "<a onclick='init(".$first.")' href='#'><img src='3.jpg' width='50px;' height='20px;'/></a>";
if($page>1){
$prev_a = "<a onclick='init(".$prev.")' href='#'><img src='1.jpg' width='50px;' height='20px;'/></a>";
}
if($page<$pages){
$next_a = "<a onclick='init(".$next.")' href='#'><img src='2.jpg' width='50px;' height='20px;'/></a>";
}
$last_a = "<a onclick='init(".$last.")' href='#'><img src='4.jpg' width='50px;' height='20px;'/></a>";
@$str = $strtext.$first_a.$prev_a.$next_a.$last_a;
//var_dump($str);
$info = array('str'=>$str,'info'=>$pageInfo);
echo json_encode($info);

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.