thinkphp5使用bootstrap实现分页功能(php实现分页功能)

5 篇文章 0 订阅
2 篇文章 0 订阅

thinkphp5使用bootstrap实现分页功能(php实现分页功能)

这是在tp5.0的基础上使用bootstrap的分页和表格实现的,废话不多说直接上代码:

//这是前端展示代码
<div class="example-wrap">
     <div class="example">
         <table id="cusTable">
             <thead>
             <th data-field="id">图片ID</th>
             <th data-field="name">图片标题</th>
             <th data-field="type_name">类别</th>
             <th data-field="add_time">添加时间</th>
             <th data-field="operate">操作</th>
             </thead>
         </table>
     </div>
 </div>

<script src="__JS__/jquery.min.js?v=2.1.4"></script> // 这些js自己找度娘要
<script src="__JS__/bootstrap.min.js?v=3.3.6"></script>
<script src="__JS__/content.min.js?v=1.0.0"></script>
<script src="__JS__/plugins/bootstrap-table/bootstrap-table.min.js"></script>
<script src="__JS__/plugins/bootstrap-table/bootstrap-table-mobile.min.js"></script>
<script src="__JS__/plugins/bootstrap-table/locale/bootstrap-table-zh-CN.min.js"></script>
<script type="text/javascript">
    function initTable() {
        $('#cusTable').bootstrapTable('destroy');
        $("#cusTable").bootstrapTable({
            method: "get",  //使用get请求到服务器获取数据
            url: "{:url('picture/index')}", //获取后台请求数据的地址
            striped: true,  //表格条纹
            pagination: true, //启动分页
            pageSize: 10,  //每页显示的记录数
            pageNumber:1, //当前第几页
            pageList: [5, 10, 15, 20, 25],  //记录数可选列表
            sidePagination: "server", //表示服务端请求
            paginationFirstText: "首页",
            paginationPreText: "上一页",
            paginationNextText: "下一页",
            paginationLastText: "尾页",
            queryParamsType : "undefined",
            queryParams: function queryParams(params) {   //设置查询参数
                var param = {
                    pageNumber: params.pageNumber,
                    pageSize: params.pageSize,
                    name:$('#name').val()
                };
                return param;
            },
            onLoadSuccess: function(res){  //网站加载时执行
                if(111 == res.code){
                    window.location.reload();
                }
                layer.msg("加载成功", {time : 1000});
            },
            onLoadError: function(){  //加载失败时执行
                layer.msg("加载数据失败");
            }
        });
    }

    $(document).ready(function () {
        //初始化bootstrap表格
        initTable();
    });
</script>
//这是php后端的代码
namespace app\admin\controller;
use app\admin\model\PictureModel;

class Picture extends Base
{
    // 图片列表
    public function index()
    {
        if(request()->isAjax()){
            
            $param = input('param.');

            $limit = $param['pageSize'];
            $offset = ($param['pageNumber'] - 1) * $limit;

            $where = [];
            $type = new TypeModel();   
            $picture = new PictureModel();
            $selectResult = $picture->getPictureByWhere($where, $offset, $limit);
            
            $return['total'] = $picture->getAllPictureCount();  // 总数据
            $return['rows'] = $selectResult;

            return json($return);
        }
        
        return $this->fetch();
    }
}
//这是php后端picture模块的代码
namespace app\admin\model; 

use think\Model;

class PictureModel extends Model
{
    // 确定链接表名
    protected $name = 'picture';

    /**
     * 后端搜索条件获取图片列表信息
     */
    public function getPictureByWhere($where, $offset, $limit)
    {
        return $this->where($where)->limit($offset, $limit)->order('sort')->select();
    }
  }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值