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更改class和id的方法
Oct 10 Javascript
创建、调用JavaScript对象的方法集锦
Dec 24 Javascript
js获取域名的方法
Jan 27 Javascript
JQuery实现超链接鼠标提示效果的方法
Jun 10 Javascript
js仿3366小游戏选字游戏
Apr 14 Javascript
清除js缓存的多种方法总结
Dec 09 Javascript
微信小程序-form表单提交代码实例
Apr 29 Javascript
node命令行工具之实现项目工程自动初始化的标准流程
Aug 12 Javascript
vue 实现模糊检索并根据其他字符的首字母顺序排列
Sep 19 Javascript
使用JS监听键盘按下事件(keydown event)
Nov 07 Javascript
JS面向对象实现飞机大战
Aug 26 Javascript
threejs太阳光与阴影效果实例代码
Apr 05 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使之能同时支持GIF和JPEG
2006/10/09 PHP
PHP 二维数组根据某个字段排序的具体实现
2014/06/03 PHP
php导入大量数据到mysql性能优化技巧
2014/12/29 PHP
PHP中COOKIES使用示例
2015/07/26 PHP
PHP实现数组array转换成xml的方法
2016/07/19 PHP
xml 与javascript结合的问题解决方法
2007/03/24 Javascript
jQuery开发者都需要知道的5个小技巧
2010/01/08 Javascript
javascript中的107个基础知识收集整理 推荐
2010/03/29 Javascript
JQuery onload、ready概念介绍及使用方法
2013/04/27 Javascript
JS函数this的用法实例分析
2015/02/05 Javascript
node.js中EJS 模板快速入门教程
2017/05/08 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
NodeJS实现不可逆加密与密码密文保存的方法
2018/03/16 NodeJs
Vue EventBus自定义组件事件传递
2018/06/25 Javascript
vue结合axios与后端进行ajax交互的方法
2018/07/06 Javascript
如何解决webpack-dev-server代理常切换问题
2019/01/09 Javascript
Vue 幸运大转盘实现思路详解
2019/05/06 Javascript
koa2 用户注册、登录校验与加盐加密的实现方法
2019/07/22 Javascript
vue实现分页加载效果
2019/12/24 Javascript
JS简单表单验证功能完整示例
2020/01/26 Javascript
微信小程序实现搜索框功能及踩过的坑
2020/06/19 Javascript
Vue单文件组件开发实现过程详解
2020/07/30 Javascript
[03:30]完美盛典趣味短片 CSGO2019年度名场面
2019/12/07 DOTA
Python实现Youku视频批量下载功能
2017/03/14 Python
详解Python绘图Turtle库
2019/10/12 Python
pandas dataframe 中的explode函数用法详解
2020/05/18 Python
安装python3.7编译器后如何正确安装opnecv的方法详解
2020/06/16 Python
利用Python如何画一颗心、小人发射爱心
2021/02/21 Python
纯CSS3实现圆圈动态发光特效动画的示例代码
2021/03/08 HTML / CSS
Happy Socks英国官网:购买五颜六色的袜子
2020/11/03 全球购物
公司出纳岗位职责
2013/12/07 职场文书
2014旅游局领导班子四风问题对照检查材料思想汇报
2014/09/19 职场文书
学习普通话的体会
2014/11/07 职场文书
2014年体育教学工作总结
2014/12/09 职场文书
店铺转让协议书
2015/01/29 职场文书
你离财务总监还有多远?速览CFO的岗位职责
2019/11/18 职场文书