温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ThinkPHP+jquery如何实现“加载更多”功能

发布时间:2021-06-24 15:15:42 来源:亿速云 阅读:231 作者:小新 栏目:web开发

这篇文章给大家分享的是有关ThinkPHP+jquery如何实现“加载更多”功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

ThinkPHP+jQuery实现“加载更多”

在很多web端界面中都会用到点击按钮加载最新几条数据的demo,下例为使用thinkphp+jquery实现实例:

ThinkPHP+jquery如何实现“加载更多”功能

要实现的结果大致如下

第一步

模板文件

  <!--软件-->       <div class="lists switcher-panel switcher-panel-cur">         <ul class="xinhao">           {volist name="apps" id="vo"}           <li class="app-item link">             <div class="list-img">               <img src="/public/static/images/{$vo.Pic}" ></div>             <div class="list-cont">               <div class="lt-c-tit">                 <h3>                   <a href="#nogo" rel="external nofollow" rel="external nofollow" >{$vo.AppName}</a></h3>                 <span>8.59MB</span></div>               <div class="lt-c-s-n">                 <div class="lt-c-s-n-l">                   <div class="star">                     <p ></p>                   </div>                 </div>                 <span>{$vo.DownloadCount}万次下载</span></div>             </div>             <div class="btns">               <a class="dl-btn js-downloadBtn" href="http://shouji.360tpcdn.com/170214/5aeae868026625e95b389b357fbdd186/com.ss.android.article.video_116.apk" rel="external nofollow" >                 <span></span>下载</a>             </div>           </li>           {/volist}         </ul>         <if condition="count($apps) eq 5">           <div class="load-bar" id="loadmore">             <a href="javascript:;" rel="external nofollow" class="user-pl-more-btn loadmore" data-type="1">加载更多</a>           </div>         </if>         <div class="load-bar" id="tip">         </div>       </div>

第二步

后台文件

class Index {   //打印首页   public function index()   {     $total=db('apps')->count();     $apps=db('apps')->where('AppStatus',1)->limit(5)->order("AppID ASC")->select();     //var_dump($apps);     $view = new View();     $view->assign('total',$total);     $view->assign('apps',$apps);     return $view->fetch('index');   }   public function data()   {     $start = Input('post.start');     //echo($start);     $list = db('apps')->limit($start, 5)->order('AppID asc')->select();     return (array( 'result'=>$list,'status'=>1, 'msg'=>'获取成功!'));   } }

第三步

模板中的异步js

  <script>     //加载更多     var nStart = 5;     $('#loadmore').click(function() {       var _this = $(".xinhao");       if(nStart >= {$total}) {         //alert('后面没有数据了!');         $("#loadmore").text('没有数据了亲...').css({"border-top":"1px solid #d4d5d6","height":"30px","line-height":"30px"});         return false;       } else {         $.post("{:url('Index/data')}", {start: nStart}, function(res) {           $.each(res['result'], function(i, item) {             _this.append('<li class="app-item link">\               <div class="list-img">\               <img src="/public/static/images/'+item.Pic+'"/></div>\               <div class="list-cont">\               <div class="lt-c-tit">\               <h3>\               <a href="#nogo" rel="external nofollow" rel="external nofollow" >'+item.AppName+'</a></h3>\             <span>8.59MB</span></div>\             <div class="lt-c-s-n">\               <div class="lt-c-s-n-l">\               <div class="star">\               <p ></p>\               </div>\               </div>\               <span>'+item.DownloadCount+'万次下载</span></div>\             </div>\             <div class="btns">\               <a class="dl-btn js-downloadBtn" href="#" rel="external nofollow" >\               <span></span>下载</a>\               </div>\               </li>');           });         });         nStart += 5;       }     });     </script>

感谢各位的阅读!关于“ThinkPHP+jquery如何实现“加载更多”功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI