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 相关文章推荐
JavaScript几种形式的树结构菜单
May 10 Javascript
jQuery对html元素取值与赋值的方法
Nov 20 Javascript
js 判断浏览器使用的语言示例代码
Mar 22 Javascript
js去除浏览器默认底图的方法
Jun 08 Javascript
js实现上传图片预览方法
Oct 25 Javascript
AngularJS的ng-repeat指令与scope继承关系实例详解
Jan 21 Javascript
jQuery设置图片等比例缩小的方法
Apr 29 jQuery
VUE长按事件需求详解
Oct 18 Javascript
JS正则表达式常见用法实例详解
Jun 19 Javascript
解决Layui中templet中a的onclick参数传递的问题
Sep 20 Javascript
vue 获取及修改store.js里的公共变量实例
Nov 06 Javascript
vue实现移动端拖动排序
Aug 21 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
Sony CFR 320 修复改造
2020/03/14 无线电
短波问题解答
2021/02/28 无线电
PHP截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
求PHP数组最大值,最小值的代码
2011/10/31 PHP
PHP ? EasyUI DataGrid 资料取的方式介绍
2012/11/07 PHP
php使用fgetcsv读取csv文件出现乱码的解决方法
2014/11/08 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
IE和Firefox下event事件杂谈
2009/12/18 Javascript
javascript call方法使用说明
2010/01/11 Javascript
40个有创意的jQuery图片、内容滑动及弹出插件收藏集之一
2011/12/31 Javascript
JQuery的$和其它JS发生冲突的快速解决方法
2014/01/24 Javascript
jquery选择器之属性过滤选择器详解
2014/01/27 Javascript
node.js中的fs.mkdir方法使用说明
2014/12/17 Javascript
js面向对象之静态方法和静态属性实例分析
2015/01/10 Javascript
jquery实现邮箱自动填充提示功能
2015/11/17 Javascript
jQuery实现鼠标滚动图片延迟加载效果附源码下载
2016/06/28 Javascript
详谈javascript精度问题与调整
2017/07/08 Javascript
Vue手把手教你撸一个 beforeEnter 钩子函数
2018/04/24 Javascript
vue用Object.defineProperty手写一个简单的双向绑定的示例
2018/07/09 Javascript
layui弹出层按钮提交iframe表单的方法
2018/08/20 Javascript
javascript实现鼠标点击生成文字特效
2019/12/24 Javascript
详细介绍解决vue和jsp结合的方法
2020/02/06 Javascript
解决Ant Design Modal内嵌Form表单initialValue值不动态更新问题
2020/10/29 Javascript
五句话帮你轻松搞定js原型链
2020/12/09 Javascript
[54:30]Liquid vs Newbee 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Numpy 将二维图像矩阵转换为一维向量的方法
2018/06/05 Python
详解使用python3.7配置开发钉钉群自定义机器人(2020年新版攻略)
2020/04/01 Python
Cotton On南非:澳洲时尚平价品牌
2018/06/28 全球购物
Oracle性能调优原则
2012/05/03 面试题
信息专业毕业生五年职业规划参考
2014/02/06 职场文书
签约仪式主持词
2014/03/19 职场文书
《闻一多先生的说和做》教学反思
2014/04/28 职场文书
2014年十一国庆节爱国演讲稿
2014/09/23 职场文书
关于长城的导游词
2015/01/30 职场文书
创卫工作总结2015
2015/04/22 职场文书
python实现web邮箱扫描的示例(附源码)
2021/03/30 Python