tp5 分页php不能foreach,tp5框架无刷新分页实现方法分析

本文实例讲述了tp5框架无刷新分页实现方法。分享给大家供大家参考,具体如下:

已tp5 分页为例,

1.默认生成的分页 页码如下:

2.点击页码  值,跳转到对应的页面,并get传 page='1' or '2';

所以无刷新需要做到两点,阻止页码 a链接跳转 和 传值【post 和 get都可以】,ajax传值到后端控制器时,接收并存入$page即可,一定要存入$page,不能是其他变量名(因为框架封装的类里面获取当前页就是从$page中获取的!)

具体做法是:

1.进入首页面(带分页的页面),用js或jQuery 给页码a标签阻止跳转;

$('#pag ul li a').attr("href",'javascript:void(0);');

2.给各页码元素绑定点击事件,所做的逻辑就是当页码被点击时,计算或获取到要跳转的页面值。

3.确定了要跳转的页面值后,然后ajax传值到后端(传递的就是page ,post  get方式都可以)。

4.后端控制器获取到传值,并存入$page ,其他分页的逻辑按照正常做法查询即可,只是查询出来的数据需要组装成字符串返回去。(返回去的还需要有页码字符串,每一次无刷新的页码字符串都不同,每切换一个页面,需要重新再和数据更换一次)

4.1为什么定义为$page?  请去框架tp5   thinkphp/think/db/Query.php找到paginate方法,入下位置(1333-1338行):

$page = isset($config['page']) ? (int) $config['page'] : call_user_func([

$class,

'getCurrentPage',

], $config['var_page']);

$page = $page < 1 ? 1 : $page;

63a7c413066ce75f103afaf0a2c4e65d.png

5.返回的数据通过jquery填入页面里,并删除之前的数据元素!

2-5  jquery代码如下:

$(function(){

//去掉分页的点击跳转

del_jump();

//当分页被点击时,进行无刷新分页

$("#pag").on('click','ul li a',function(){

//当前被点击的页码数 或者 箭头

dianji = $(this).html();

current_page = $('.active span').html();

page = '';

if(dianji == "«") {

current_page = Number(current_page);

page = String(current_page-1);

}else if(dianji == "»") {

current_page = Number(current_page);

page = String(current_page+1);

}else{

page = dianji;

}

//发送ajax到后台

$.post("{:url('Virtual/index')}",

{'page':page},

function(data){

//将返回的数据添加到页面上去

$('#record_list').html(data.html);

$('#pag').html(data.pages);

del_jump();

},'json');

});

//去掉分页的点击跳转

function del_jump() {

$('#pag ul li a').attr("href",'javascript:void(0);');

}

});

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

weixin_39747595
关注 关注
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
tp5循环查询语句_tp5.1-foreach循环和分页
weixin_29621655的博客
12-24 998
namespaceapp\index\controller;usethink\Controller;useapp\index\model\UserasUserModel;//引入model中命名空间里面的类->的别名;classUserextendsController{//模板赋值;publicfunctiondemo1(){//通过助手函数调用all(获取所有信息)方...
phpforeach结合curl实现多线程的方法分析
10-21
主要介绍了phpforeach结合curl实现多线程的方法,结合实例形式分析foreach语句结合curl循环调用模拟多线程的原理与实现技巧,需要的朋友可以参考下
PHP实现文件内容的分页读取
weixin_34150830的博客
02-28 305
/** * 文件内容分页读取函数 * @param string/Array $file_path_arr 文件名 * @param int $start 分页起始行数 * @return json * @author gongzheng <990653058@qq.com> * @since 201...
thinkphp模板中foreach循环没数据的错误解决
weixin_30783629的博客
06-15 607
从控制器方法中$this->assign();函数将值传递给html模板 但是模板不显示数据,直接出来的是代码,效果就和html中写了php代码不能解析一样。 原来是我将thinkphp框架的引擎和smarty模板引擎的使用方法混了。写成了 查手册知道了thinkphp模板中foreach的使用方法,这才恍然大悟 转载于:https://www.cnbl...
php循环分页,如何使用PHPforeach循环中对行进行分页
weixin_30999777的博客
03-13 655
使用以下代码显示我的Twitter个人资料中的朋友列表。我想一次只加载一个特定的数字,例如20,然后在底部为第1-2-3-4-5页的页面提供分页链接(但是,除以限制)$xml = simplexml_load_string($rawxml);foreach ($xml->id as $key => $value){$profile = simplexml_load_...
tp5 分页php不能foreach,tp5.1-foreach循环和分页
weixin_35752122的博客
03-11 175
namespaceapp\index\controller;usethink\Controller;useapp\index\model\UserasUserModel;//引入model中命名空间里面的类->的别名;classUserextendsController{//模板赋值;publicfunctiondemo1(){//通过助手函数调用all(获取所有信息)方...
tp5 分页php不能foreach,thinkphp5分页样式,tp5分页样式
weixin_36090220的博客
03-11 126
tihinkphp自带的分页类样式,有时不能满足项目的要求,这里主要介绍一下,分页类样式的定制和美化,使其更简洁、美观thinkphp5控制器写法function index($keyword='', $page = 1){$map = [];if ($keyword) {$map['code'] = ['like', "%{$keyword}%"];}$list=Db('package')-&g...
tp5 分页php不能foreach,tp5分页后怎么处理items数据?thinkphp5处理分页后的数据...
weixin_35048919的博客
03-11 231
tp5分页后怎么处理items数据?thinkphp5处理分页后的数据 下面是demo$list = Db::name("content")->where("createdby",$u["admin_userid"])->order("contentid DESC")->paginate($limit);$list = json_encode($list);$list = js...
html c foreach分页,tp5 foreach分页
weixin_35068573的博客
06-15 288
class Page {public $page; //当前页public $total; //总记录数public $listRows; //每页显示记录数private $uri;//动态urlpublic $pageNum; //总页数private $listNum=6;//显示页码按钮数量public $render;//分页后的html模板public $data;//分页后渲染到...
php tp框架分页源代码,thinkphp5中分页操作
weixin_40004081的博客
03-10 90
$New_Album_List = Db::name('MediaAlbum a')->join($this->_tab_prefix."user u", "a.user_id=u.user_id")->join($this->_tab_prefix."fm_sound fm","fm.album_id=a.album_id")->where('a.is_audit...
THINKPHP5分页数据对象处理过程解析
12-16
在用到THINKPHP5的分页的时候,我们可以发现获取的数据是对象,如果我们要对数据进行循环增加数据就实现不了 今天用此方法解决,以做记录方便以后忘了查看 // 查询状态为1的用户数据 并且每页显示30条数据 $list = ...
ECMA5数组的新增方法有哪些及forEach()模仿实现
09-03
主要介绍了ECMA5数组的新增方法有哪些及forEach()模仿实现,需要的朋友可以参考下
改写ThinkPHP的U方法使其路由下分页正常
12-18
分页地址不是路由的地址,由于thinkphp3.2.1的代码也没有修复,很多人都遇到了这一问题,本文采纳olcms的修改方法解决这一问题,特别感谢phper jack对此做出的贡献,具体解决办法是修改ThinkPHP的functions.php的U...
注册与表格显示.rar
06-13
注册与表格显示.rar
aiohttp-3.8.0-cp36-cp36m-musllinux_1_1_x86_64.whl
06-13
Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。
fpga有助于大家理解和学习
06-13
fpga
pyzmq-14.4.1-py2.7-macosx-10.6-intel.egg
最新发布
06-13
Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。
基于Selenium的Java爬虫实战(内含谷歌浏览器Chrom和Chromedriver版本121.0.6105.0)
06-13
资源包括: 1.Java爬虫实战代码 2.selenium学习笔记 3.代码演示视频 4.谷歌浏览器chrom121.0.6105.0 chrome-linux64.zip chrome-mac-arm64.zip chrome-mac-x64.zip chrome-win32.zip chrome-win64.zip 5.谷歌浏览器驱动器Chromedriver121.0.6105.0 chromedriver-linux64.zip chromedriver-mac-arm64.zip chromedriver-mac-x64.zip chromedriver-win32.zip chromedriver-win64.zip 特别说明:Chrome 为测试版(不会自动更新) 仅适用于自动测试。若要进行常规浏览,请使用可自动更新的标准版 Chrome。)
foreach循环如何控制循环出来的数据分页显示
10-23
在使用foreach循环控制分页显示时,可以使用TP5的paginate()方法实现。具体步骤如下: 1.先查询出需要分页显示的数据,使用paginate()方法进行分页,将分页对象赋值给$list变量。 2.使用each()方法对$list进行遍历...

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 华为服务器u盘安装win系统,华为电脑u盘重装系统win10教程 7747
  • stretchblt 模糊_拼多多直播不显示画面?直播画面模糊怎么调整 5669
  • python怎么返回上一步操作_一步一步教你如何用python操作mysql 4766
  • html表白特效源代码_程序员如何在七夕节表白 4743
  • 传输层端口号的范围是多少?被分为哪两部分_第三章, 传输层 4545

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • github代码虚拟服务器,把github代码自动部署到服务器
  • fdfs往服务器上传文件超时,FastDFS 实现大文件分片上传
  • ninjala还是显示服务器维护,Ninjala更新2.0版本 调整了武器平衡以及BUG修复
2021年138篇
2020年213篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司霍邱品牌网站设计价格焦作建站推荐襄樊阿里店铺运营推荐六安百姓网标王推广报价阜阳网站推广推荐海口网站定制多少钱昆明模板制作塔城建网站公司内江网站排名优化推荐晋中外贸网站设计多少钱霍邱建网站报价漯河模板推广多少钱飞来峡设计网站哪家好阿坝网站搜索优化多少钱张掖网络推广公司诸城SEO按天收费景德镇关键词排名多少钱舟山高端网站设计价格鄂州百度爱采购公司阳泉网站关键词优化多少钱迁安企业网站建设推荐保定营销网站报价莆田英文网站建设推荐南昌百度竞价报价贺州营销网站推荐海口推广网站多少钱兰州网站制作设计公司毕节优秀网站设计报价厦门网页设计推荐钦州网页制作公司歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化