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 相关文章推荐
基于JQuery的6个Tab选项卡插件
Sep 03 Javascript
javascript 实现子父窗体互相传值的简单实例
Feb 17 Javascript
可恶的ie8提示缺少id未定义
Mar 20 Javascript
node.js中的fs.futimesSync方法使用说明
Dec 17 Javascript
jQuery简单实现QQ空间点赞已经取消点赞
Apr 02 Javascript
使用纯javascript实现经典扫雷游戏
Apr 23 Javascript
信息页文内画中画广告js实现代码(文中加载广告方式)
Jan 03 Javascript
bootstrap+jQuery实现的动态进度条功能示例
May 25 jQuery
jquery获取链接地址和跳转详解(推荐)
Aug 15 jQuery
vue中使用vue-router切换页面时滚动条自动滚动到顶部的方法
Nov 28 Javascript
详解vue移动端项目代码拆分记录
Mar 15 Javascript
JS Ajax请求会话过期处理问题解决方法分析
Nov 16 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 缩略图实现函数代码
2011/06/23 PHP
PHP自动识别字符集并完成转码详解
2013/08/02 PHP
php启用sphinx全文搜索的实现方法
2014/12/24 PHP
PHP使用imagick扩展实现合并图像的方法
2017/04/25 PHP
深入理解PHP+Mysql分布式事务与解决方案
2020/12/03 PHP
二行代码解决全部网页木马
2008/03/28 Javascript
JS自动缩小超出大小的图片
2012/10/12 Javascript
javascript中的void运算符语法及使用介绍
2013/03/10 Javascript
JS将光标聚焦在文本最后的实现代码
2014/03/28 Javascript
json的定义、标准格式及json字符串检验
2014/05/11 Javascript
用NODE.JS中的流编写工具是要注意的事项
2016/03/01 Javascript
详解JavaScript的AngularJS框架中的作用域与数据绑定
2016/03/04 Javascript
基于jQuery的网页影音播放器jPlayer的基本使用教程
2016/03/08 Javascript
AngularJS实践之使用NgModelController进行数据绑定
2016/10/08 Javascript
Javascript之图片的延迟加载的实例详解
2017/07/24 Javascript
基于Vue实例对象的数据选项
2017/08/09 Javascript
Vue-Cli中自定义过滤器的实现代码
2017/08/12 Javascript
React降级配置及Ant Design配置详解
2018/12/27 Javascript
js form表单input框限制20个字符,10个汉字代码实例
2019/04/12 Javascript
浅析Python中signal包的使用
2015/11/13 Python
Python画柱状统计图操作示例【基于matplotlib库】
2018/07/04 Python
python3.5安装python3-tk详解
2019/04/26 Python
django基础学习之send_mail功能
2019/08/07 Python
mac在matplotlib中显示中文的操作方法
2020/03/06 Python
python实现udp聊天窗口
2020/03/31 Python
你不知道的葡萄干处理法、橙蜜处理法、二氧化碳酵母法
2021/03/17 冲泡冲煮
web字体加载方案优化小结
2019/11/29 HTML / CSS
味多美官网:蛋糕订购,100%使用天然奶油
2017/11/10 全球购物
澳大利亚领先的美容护肤品零售商之一:SkincareStore
2018/01/22 全球购物
什么是命名空间(NameSpace)
2015/11/24 面试题
人民调解员先进事迹材料
2014/05/08 职场文书
设计专业自荐信
2014/06/19 职场文书
求职信的正确写法
2014/07/10 职场文书
高中班主任评语
2014/12/30 职场文书
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
2021/05/17 Python
解决vue中provide inject的响应式监听
2022/04/19 Vue.js