php ajax无刷新分页,支持id定位示例代码
程序员文章站
2022-03-31 21:29:58
...
AJAX 是一种与服务器交换数据的技术,可以在不重新载入整个页面的情况下更新网页的一部分。本文章主要介绍php 使用ajax实现的无刷新分页代码
<?php Header("Content-Type:text/html; charset=utf-8"); function AjaxPage($Total,$ListNub,$CurrentPage,$Url,$AjaxAction,$HalfPer='',$ViewId='') { //计算总页数 $totalPage = @ceil($Total/$ListNub); $total=$totalPage-1; $re=""; //echo $CurrentPage; $re .= ( $CurrentPage > 0 ) ? "<td><a href=\"javascript:$AjaxAction('$Url=0','$ViewId')\"\">首页</a></td>\n<td><a href=\"javascript:$AjaxAction('".$Url."=".($CurrentPage-1)."','$ViewId')\"\">上一页</a></td>\n" : "<td>首页</td>\n<td>上一页</td>\n"; for ( $i = $CurrentPage - $HalfPer,$i > 0 || $i = 0 , $j = $CurrentPage + $HalfPer, $j < $totalPage || $j = $totalPage;$i < $j ;$i++ ) { $re .= $i == $CurrentPage ? "<td><b class=currentPage>[" . ( $i + 1 ) . "]</b></td>\n" : "<td><a href=\"javascript:$AjaxAction('$Url=$i','$ViewId')\">" . ( $i + 1 ) . "</a></td>\n"; } $re .= ( $CurrentPage < $total ) ? "<td><a href=\"javascript:$AjaxAction('".$Url."=".($CurrentPage+1)."','$ViewId')\"\">下一页</a></td>\n<td><a href=\"javascript:$AjaxAction('".$Url."=".($total)."','$ViewId')\"\">尾页</a>\n</td>" : "<td>下一页</td>\n<td>尾页</td>\n"; $re="<table style=text-align:center><tr>$re</tr></table>"; return $re; } //总页数,传递的页面变量-当前页 url地址 前后各多少页 $page = $_GET['page']; //echo page('10',$page,'index.php?page','2'); ?> <p id="nike"> <?php echo AjaxPage(200,20,$page,'rand.php?page','ajaxaction','2','nike'); ?> </p> <script type="text/javascript" language="javascript"> var http_request = false; function send_request(url,htmlid) { http_request = false; if (window.XMLHttpRequest) { http_request = new XMLHttpRequest(); if (http_request.overrideMimeType) { http_request.overrideMimeType('text/xml'); } } else if (window.ActiveXObject) { try { http_request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!http_request) { alert('不能创建 XMLHttpRequest 对象!'); return false; } http_request.onreadystatechange = function (){likeakak(htmlid);}//processRequest(htmlid) http_request.open('GET', url, true); http_request.send(null); } //处理返回信息 function processRequest(htmlid) { if (http_request.readyState == 1) { document.getElementById(htmlid).innerHTML="下载中..."; } if (http_request.readyState == 4) { if (http_request.status == 200) { document.getElementById(htmlid).innerHTML=http_request.responseText; } else { alert('请求异常'); } } } //处理返回信息 function likeakak(htmlid) { if (http_request.readyState == 1) { document.getElementById(htmlid).innerHTML="下载中..."; } if (http_request.readyState == 4) { if (http_request.status == 200) { document.getElementById(htmlid).innerHTML=http_request.responseText; } else { alert('请求异常'); } } } function ajaxaction(url,viewid) { send_request(url,viewid); } //自定义调用函数 function elist(id) { var inputarray = new Array(); inputarray[1] = 'aaa'; inputarray[2] = 'bbb'; inputarray[3] = 'ccc'; inputarray[4] = 'ddd'; inputarray[5] = 'eee'; send_request('ajax.php?do=ajax&sort='+id,inputarray[id]); } </script>
以上就是php ajax无刷新分页,支持id定位示例代码的详细内容,更多请关注其它相关文章!
上一篇: 15个nosql数据库
下一篇: ES6的Set数据结构是什么