PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)


Posted in PHP onSeptember 17, 2017

1.首先做主页面Ajax_pag.php

代码如下:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Ajax做分页</title>
    <script src="bootstrap/js/jquery-1.11.2.min.js"></script>
    <script src="Ajax_pag.js"></script>
    <script src="bootstrap/js/bootstrap.min.js"></script>
    <link href="bootstrap/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet" type="text/css"/>
  </head>
  <style>
    .header{
      margin-top: 20px;
    }
  </style>
  <body>
    <div >
      关键字:
      <input id="key" type="text" name="gjz"/>
      <input type="button" value="查询" id="ck" />
      
    </div>
    <table class="table table-bordered header">
      <thead>
        <tr>
          <th>地区代号</th>
          <th>地区名称</th>
          <th>父级代号</th>
        </tr>
      </thead>
      <tbody id="list">

      </tbody>
    </table>

    <div >
      <ul class="pagination" id="fenye">

      </ul>
    </div>

    </body> 
</html>

2.然后做分页查询JS页面Ajax_pag.js

代码如下:

//ajax分页开始
    var ts = 10;//每页显示的条数
    var page = 1;//当前页
    $(document).ready(function(e) {
      //页面加载数据
      Load();
      //加载分页列表
      Loadlist();
      $("#ck").click(function(){    
    //页面加载数据
    Load();
    //加载分页列表
    Loadlist();    
  })
})        
    
    //加载数据的方法
    function Load(){  
      var gjz = $("#key").val();
        $.ajax({
            async:false,
            url:"pagechuli.php",
            data:{page:page,ts:ts,gjz:gjz},//page是显示的页数;ts是显示的条数
            type:"POST",
            dataType:"JSON",               
            success: function(data){                             
                  var str ="";            
                  for(var k in data)
                  {
                  str +="<tr><td>"+data[k][0]+"</td><td>"+data[k][1]+"</td><td>"+data[k][2]+"</td></tr>";
                  }
                  $("#list").html(str);//把拼接好的字符串放到要显示的thody里面                          
                }
              })
            }  
    //加载分页列表      
    function Loadlist(){
      var str ="";    
      //上一页
      str+="<li><a id='prev'>«</a></li>";
      //加载列表
      for(var i=page-4;i<page+5;i++){
        //限制条件
        if(i>0 && i<=zys()){
        //判断当前页
        if(i==page){  
          str+= "<li class='active'><a>"+i+"</a></li>";  
      }else{
      str+= "<li><a class='item'>"+i+"</a></li>";
      }
    }    
  }
      //下一页
      str+="<li><a id='next'>»</a></li>";
      $("#fenye").html(str);
      
      $("#prev").click(function(){
        if(page>1){
          page--;          
        }
        //页面加载数据
        Load();
        //加载分页列表
        Loadlist();
      })
      
      $(".item").click(function(){
        var p = $(this).text();//取到的是字符串,转化为整数
        page = parseInt(p);
        //页面加载数据
        Load();
        //加载分页列表
        Loadlist();
      })
      
      $("#next").click(function(){
        if(page<zys()){
          page++;
        }
        //页面加载数据
        Load();
        //加载分页列表
        Loadlist();
      })
      
    }
  
  
  
  
  //总页数
  function zys(){
    var zys = 0;
    $.ajax({
      async:false,
      url:"zyschuli.php",
      dataType:"TEXT",
      success:function(data){
        zys = Math.ceil(data/ts);
      }
    });
    return zys;
  }

3.最后做分页查询处理页面pagechuli.php

代码如下:

<?php
$gjz = $_POST["gjz"];
$page = $_POST["page"];//获取页数显示值
$ts = $_POST["ts"];//获取每页条数显示值

require_once "./DBDA.class.php";
$db = new DBDA();

$tj = " 1=1 ";
if(!empty($_POST["gjz"])){
  $gjz = $_POST["gjz"];
  $tj = " areaname like '%{$gjz}%' or areacode like '%{$gjz}%' or parentareacode like '%{$gjz}%' ";
}

$tg = ($page-1)*$ts;//每页显示$ts条数据,这里显示的就是当前页的$tg条数据。
$sql = "select * from chinastates where {$tj} limit {$tg},{$ts}";
echo $db->JsonQuery($sql,0)

小插件:总页数的处理页面zyschuli.php

<?php
require_once "./DBDA.class.php";
$db = new DBDA();

$sql = "select count(*) from chinastates";
echo $db->StrQuery($sql,0);

效果如图:PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)

PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)

关键字查询:

PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)

以上这篇PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP 字符串加密函数(在指定时间内加密还原字符串,超时无法还原)
Apr 28 PHP
php 获取select下拉列表框的值
May 08 PHP
Look And Say 序列php实现代码
May 22 PHP
yii框架中的Url生产问题小结
Jan 16 PHP
PHP正则提取不包含指定网址的图片地址的例子
Apr 21 PHP
简单分析ucenter 会员同步登录通信原理
Aug 25 PHP
phpmyadmin提示The mbstring extension is missing的解决方法
Dec 17 PHP
又十个超级有用的PHP代码片段
Sep 24 PHP
PDO的安全处理与事物处理方法
Oct 31 PHP
PHP htmlspecialchars() 函数实例代码及用法大全
Sep 18 PHP
Laravel统计一段时间间隔的数据方法
Oct 09 PHP
php慢查询日志和错误日志使用详解
Feb 27 PHP
PHP实现深度优先搜索算法(DFS,Depth First Search)详解
Sep 16 #PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
Sep 16 #PHP
PHP实现的迪科斯彻(Dijkstra)最短路径算法实例
Sep 16 #PHP
PHP环形链表实现方法示例
Sep 15 #PHP
PHP实现的链式队列结构示例
Sep 15 #PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 #PHP
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
Sep 15 #PHP
You might like
通过JavaScript或PHP检测Android设备的代码
2011/03/09 PHP
关于PHP实现异步操作的研究
2013/02/03 PHP
解决Codeigniter不能上传rar和zip压缩包问题
2014/03/07 PHP
PHP中filter函数校验数据的方法详解
2015/07/31 PHP
微信公众号开发客服接口实例代码
2016/10/21 PHP
Laravel学习教程之request validation的编写
2017/10/25 PHP
php闭包中使用use声明变量的作用域实例分析
2018/08/09 PHP
用javascript自动显示最后更新时间
2007/03/15 Javascript
javascript options属性集合操作代码
2009/12/28 Javascript
jQuery示例收集
2010/11/05 Javascript
nodejs教程 安装express及配置app.js文件的详细步骤
2013/05/11 NodeJs
基于nodejs+express4.X实现文件下载的实例代码
2017/07/13 NodeJs
angularjs http与后台交互的实现示例
2018/12/21 Javascript
Vue开发之watch监听数组、对象、变量操作分析
2019/04/25 Javascript
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
express如何解决ajax跨域访问session失效问题详解
2019/06/20 Javascript
react koa rematch 如何打造一套服务端渲染架子
2019/06/26 Javascript
Node.js 实现远程桌面监控的方法步骤
2019/07/02 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
Python实现破解猜数游戏算法示例
2017/09/25 Python
Python3.6简单反射操作示例
2018/06/14 Python
python 常用的基础函数
2018/07/10 Python
使用python的pandas库读取csv文件保存至mysql数据库
2018/08/20 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
python Django中models进行模糊查询的示例
2019/07/18 Python
python如何进入交互模式
2020/07/06 Python
OpenCV图片漫画效果的实现示例
2020/08/18 Python
mac系统下安装pycharm、永久激活、中文汉化详细教程
2020/11/24 Python
PyCharm 解决找不到新打开项目的窗口问题
2021/01/15 Python
pytho matplotlib工具栏源码探析一之禁用工具栏、默认工具栏和工具栏管理器三种模式的差异
2021/02/25 Python
Zatchels官网:英国剑桥包品牌
2021/01/12 全球购物
说出你对remoting 和webservice的理解和应用
2014/06/08 面试题
初中生三年学习生活的自我评价
2013/11/03 职场文书
受欢迎的大学生自我评价
2013/12/05 职场文书
计划生育责任书
2015/05/09 职场文书
2015年女工委工作总结
2015/07/27 职场文书