首页 > php教程 > php手册 > 正文

改造thinkphp 的 Page类,使其支持ajax方式

php中文网
发布: 2016-06-07 11:42:11
原创
1653人浏览过

改造thinkphp 的 Page类,使其支持ajax方式
效果:
改造thinkphp 的 Page类,使其支持ajax方式
说明:thinkphp版本:3.2.1
步骤:
1、打开Page.class.php(路径:ThinkPHP/Library/Think)
找到第48行:
 empty($_GET[$this->p]) ? 1 : intval($_GET[$this->p]);  改为:
 empty(I($this->p)) ? 1 : intval(I($this->p));
实际是改为用内置的 I 函数读取传递进来的P参数,这样并不会影响原有的功能。

2、ajax方式的调用:
即前台html页面
<div>此处用来显示分页内容</div> <br><br> javascript:    function jzry(p) {<br>         var request = $.ajax({<br>             url: "__MODULE__/Home/jzrh",  //用ajax加载分页数据<br>             type: "POST",<br>             async: false,<br>             data:{p:p},<br>             beforeSend: function(xhr) {<br>                 $('#message').html("正在加载数据,请稍候。");<br>             }<br>         });<br>         request.done(function(msg) {<br>             if (msg.bj == 'ok') {<br>                 $('#rs').html(msg.page);    //显示分页<br>                 $("#rs a").removeAttr("href");   //删除原来的连接地址方式,<br>                 <br>                 //改用ajax按键事件<br>                 $(".num,.end,.first").on("click", function(){<br>                     jzry( $(this).text() );<br>                 });<br>                 $(".next").on("click", function(){<br>                     jzry( parseInt($(".current").text())+1);<br>                 });<br>                 $(".prev").on("click", function(){<br>                     jzry( parseInt($(".current").text())-1);<br>                 });<br>         }});<br>         request.fail(function(jqXHR, textStatus) {<br>             $('#message').html("错误: " + textStatus);<br>         });<br>     } 样式: <style><br /> #rs a { color:#333;display:block; padding:0px 6px;<br /> font-weight:bold;float:left;border:1px solid #5d9cdf;<br /> height:20px; line-height:20px; margin:0px 2px;}<br /> .current { background:#a9d2ff; display:block; padding:0px 6px;<br /> font-weight:bold;;float:left}<br /> .clear{clear:both}<br /> </style>
3、后台使用和原来的一样 <br>         $user = M("user"); <br>         $User = $user-&gt;page($_POST['p'].',20')-&gt;order('id')-&gt;select();<br>         if ($User &gt; 0) {<br>             $val['bj'] = 'ok';<br>             $count=$user-&gt;count();<br>             $Page=new \Think\Page($count,20);<br>             $val['page']=$Page-&gt;show();<br>             $this-&gt;ajaxReturn($val);                      //ajax方式返回<br>         }

AD:真正免费,域名+虚机+企业邮箱=0元

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

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