ThinkPHP+jquery实现“加载更多”功能代码


Posted in Javascript onMarch 11, 2017

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}" alt=""></div>
            <div class="list-cont">
              <div class="lt-c-tit">
                <h2>
                  <a href="#nogo" rel="external nofollow" rel="external nofollow" >{$vo.AppName}</a></h2>
                <span>8.59MB</span></div>
              <div class="lt-c-s-n">
                <div class="lt-c-s-n-l">
                  <div class="star">
                    <p style="width: 73%;"></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+'"alt=""/></div>\
              <div class="list-cont">\
              <div class="lt-c-tit">\
              <h2>\
              <a href="#nogo" rel="external nofollow" rel="external nofollow" >'+item.AppName+'</a></h2>\
            <span>8.59MB</span></div>\
            <div class="lt-c-s-n">\
              <div class="lt-c-s-n-l">\
              <div class="star">\
              <p style="width: 73%;"></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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS是否可以跨文件同时控制多个iframe页面的应用技巧
Dec 16 Javascript
Javascript !!的作用
Dec 04 Javascript
Jquery 高亮显示文本中重要的关键字
Dec 24 Javascript
jQuery实现单行文字间歇向上滚动源代码
Jun 02 Javascript
去掉gridPanel表头全选框的小例子
Jul 18 Javascript
jquery.cookie用法详细解析
Dec 18 Javascript
Jquery根据浏览器窗口改变调整大小的方法
Feb 07 Javascript
webpack 1.x升级过程中的踩坑总结大全
Aug 09 Javascript
JQuery判断正整数整理小结
Aug 21 jQuery
详解Node.js中的Async和Await函数
Feb 22 Javascript
vue-router之解决addRoutes使用遇到的坑
Jul 19 Javascript
关于vue的列表图片选中打钩操作
Sep 09 Javascript
Bootstrap的Carousel配合dropload.js实现移动端滑动切换图片
Mar 10 #Javascript
基于Bootstrap框架实现图片切换
Mar 10 #Javascript
angularjs ui-router中路由的二级嵌套
Mar 10 #Javascript
AngularJS ui-router (嵌套路由)实例
Mar 10 #Javascript
微信小程序手势操作之单触摸点与多触摸点
Mar 10 #Javascript
Web纯前端“旭日图”实现元素周期表
Mar 10 #Javascript
微信小程序 MD5的方法详解及实例代码
Mar 10 #Javascript
You might like
用在PHP里的JS打印函数
2006/10/09 PHP
ThinkPHP采用原生query实现关联查询left join实例
2014/12/02 PHP
php进程间通讯实例分析
2016/07/11 PHP
php实现简单的权限管理的示例代码
2017/08/25 PHP
拥抱模块化的JavaScript
2012/03/07 Javascript
javascript中input中readonly和disabled区别介绍
2012/10/23 Javascript
jquery实现树形二级菜单实例代码
2013/11/20 Javascript
如何屏蔽防止别的网站嵌入框架代码
2015/08/24 Javascript
使用JQuery在线制作ppt并在线演示源码特效
2015/09/08 Javascript
JavaScript基本语法学习教程
2016/01/14 Javascript
JS原型链怎么理解
2016/06/27 Javascript
js replace 全局替换的操作方法
2018/06/12 Javascript
ES6基础之解构赋值(destructuring assignment)
2019/02/21 Javascript
重置Redux的状态数据的方法实现
2019/11/18 Javascript
浅谈Vue SSR中的Bundle的具有使用
2019/11/21 Javascript
Python写的服务监控程序实例
2015/01/31 Python
Python中工作日类库Busines Holiday的介绍与使用
2017/07/06 Python
Python基于动态规划算法解决01背包问题实例
2017/12/06 Python
python 实现多线程下载m3u8格式视频并使用fmmpeg合并
2019/11/15 Python
Python中实现输入超时及如何通过变量获取变量名
2020/01/18 Python
Python中的 ansible 动态Inventory 脚本
2020/01/19 Python
详解PyQt5信号与槽的几种高级玩法
2020/03/24 Python
Python接口测试环境搭建过程详解
2020/06/29 Python
python爬虫中抓取指数的实例讲解
2020/12/01 Python
理货员的岗位职责
2013/11/23 职场文书
教师演讲稿范文
2014/01/08 职场文书
饭店工作计划书
2014/01/10 职场文书
电大会计学自我鉴定
2014/02/06 职场文书
擅自离岗检讨书
2014/02/11 职场文书
师范生自我鉴定
2014/03/20 职场文书
一年级评语大全
2014/04/23 职场文书
校园标语大全
2014/06/19 职场文书
团队拓展活动总结
2014/08/27 职场文书
乡镇遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
Python实现照片卡通化
2021/12/06 Python
MySQL 字符集 character
2022/05/04 MySQL