javascript - 如何实现ajax和js的无刷新分页效果
怪我咯
怪我咯 2017-04-11 09:10:53
[JavaScript讨论组]

实现ajax数据请求的分页效果:类似图片上!代码如何实现

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(6)
阿神

ajax请求某一页的数据,然后把表格清空,然后把新数据组成表格塞回去。

PHP中文网

1.css做出分页样式;
2.监听事件,传递分页参数pageNo,在ajax回调里面写列表的重新拼装和渲染。

迷茫

思路就是触发分页事件的时候进行一次ajax请求,成功后更新表格就行了:

ele.onclick = function() {  //假设ele是点击后触发分页的元素
    var index = ele.pageIndex;
    var xhr = new XMLHttpRequest();
    xhr.open('GET', 'URL', true);//URL应包含分页信息,比如pageIndex,pageSize等
    xhr.onreadystatechange = function() {
        if ( xhr.status == 200 && xhr.readyState == 4 ) {
            updateTable(xhr.responseText);  //这个updateTable就是你用来更新表格的方法,在本页面执行,不会刷新
        }
    }
    xhr.send('');
}
高洛峰

当点击页码时:

  • 前端传值: currentPage(当前请求第几页),perPage(每页多少条数据);

  • 后端返回值: pages(总共页数),data(返回数据);

  • 前端在第一次请求数据的时候根据后端返回的总页数,展示到前端翻页栏;若是未使用数据绑定,如react,vue,knockout等,下次请求时将表哥清空再循环插入html即可,若是使用了数据绑定则只需重新设置返回的数据即可重新渲染页面。

黄舟

觉得题主应该掌握四点知识:

  1. ajax

  2. php的分页技术

  3. mysql的limit

  4. jquery

详解:

  1. ajax 点击页码的时候触发一个click(jQuery)事件,然后获取到这个页码的值,发送到后端

  2. php接收到这个页码的参数,根据当前页码和显示条数进行计算

$page = $_GET['page'];  //当前页码
$page_num = 12;         //显示条数
$offect = $page_num * ( $page - 1 );    

$sql = "select * from table limit $offset,$page_num";  //3、sql的limit语法

//组装成html返回给前台


echo $html;exit;

       4.前端替换列表内容对应的p即可。

这是老方法,不知道最新的方法是怎样的。

以上。对了,这样的问题百度一大把资源。真的,不骗你。

ringa_lee

ajax用法请查api
至于无刷新分页,你只要把table区域内的数据,清空并替换即可,题主看看jquery,基本就能实现了,很简单...

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号