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高级学习笔记整理
Aug 14 Javascript
分享几个超级震憾的图片特效
Jan 08 Javascript
javascript实现数独解法
Mar 14 Javascript
js验证真实姓名与身份证号是否匹配
Oct 13 Javascript
JavaScript html5 canvas实现图片上画超链接
Oct 20 Javascript
jquery ajaxfileupload异步上传插件
Nov 21 jQuery
微信小程序实现YDUI的ScrollNav组件
Feb 02 Javascript
vue生成token并保存到本地存储中
Jul 17 Javascript
原生js封装的ajax方法示例
Aug 02 Javascript
深入Vue-Router路由嵌套理解
Aug 13 Javascript
微信小程序实现顶部下拉菜单栏
Nov 04 Javascript
详解vue-video-player使用心得(兼容m3u8)
Aug 23 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.ini中文版
2006/10/09 PHP
php字符串截取的简单方法
2013/07/04 PHP
PHP屏蔽关键字实现方法
2016/11/17 PHP
PHP使用preg_split和explode分割textarea存放内容的方法分析
2017/07/03 PHP
Js切换功能的简单方法
2010/11/23 Javascript
jquery select多选框的左右移动 具体实现代码
2013/07/03 Javascript
js日期、星座的级联显示代码
2014/01/23 Javascript
jquery append()方法与html()方法的区别及使用介绍
2014/08/01 Javascript
用Jquery选择器计算table中的某一列某一行的合计
2014/08/13 Javascript
浅谈javascript中的instanceof和typeof
2015/02/27 Javascript
js基于面向对象实现网页TAB选项卡菜单效果代码
2015/09/09 Javascript
javascript 用函数实现继承详解
2016/05/28 Javascript
jQuery获取this当前对象子元素对象的方法
2016/11/29 Javascript
JS实现重新加载当前页面
2016/11/29 Javascript
node学习记录之搭建web服务器教程
2017/02/16 Javascript
jQuery插件MovingBoxes实现左右滑动中间放大图片效果
2017/02/28 Javascript
轻松理解vue的双向数据绑定问题
2017/10/30 Javascript
jquery实现回车键触发事件(实例讲解)
2017/11/21 jQuery
JS兼容所有浏览器的DOMContentLoaded事件
2018/01/12 Javascript
JS实现动态添加外部js、css到head标签的方法
2019/06/05 Javascript
[38:44]DOTA2上海特级锦标赛A组小组赛#2 Secret VS CDEC第二局
2016/02/25 DOTA
Python在Console下显示文本进度条的方法
2016/02/14 Python
Python GUI Tkinter简单实现个性签名设计
2018/06/19 Python
详解Python下Flask-ApScheduler快速指南
2018/11/04 Python
python批量处理文件或文件夹
2020/07/28 Python
将tensorflow模型打包成PB文件及PB文件读取方式
2020/01/23 Python
英国最大的电子产品和家电零售企业:Currys PC World
2016/09/24 全球购物
捷克鲜花配送:Florea.cz
2018/10/29 全球购物
工作表现评语
2014/01/19 职场文书
《小石潭记》教学反思
2014/02/13 职场文书
个人承诺书怎么写
2014/05/24 职场文书
求职简历自荐信
2014/06/18 职场文书
个人德育工作总结
2015/03/05 职场文书
学校运动会通讯稿
2015/07/18 职场文书
HTML中table表格拆分合并(colspan、rowspan)
2021/04/07 HTML / CSS
PHP RabbitMQ消息列队
2022/05/11 PHP