tp5框架datatables后端分页搜索

@ 作者:纵这世界多喧嚣

tp5框架datatables后端分页搜索

前端代码.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <!--第一步:引入Javascript / CSS (CDN)-->
    <!-- DataTables CSS -->
    <link rel="stylesheet" type="text/css" href="http://cdn.datatables.net/1.10.21/css/jquery.dataTables.css">
    <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js">
    </script>
    <!-- DataTables -->
    <script type="text/javascript" charset="utf8" src="http://cdn.datatables.net/1.10.21/js/jquery.dataTables.js"></script>
</head>
<body>
<!--第二步:添加如下 HTML 代码-->
<table id="table_id_example" class="display">
    <thead>
    <tr>
        <th >id</th>
        <th>文章标题</th>
        <th>文章作者</th>
        <th>文章简介</th>
    </tr>
    </thead>
    <tbody>

    </tbody>
</table>
</body>
</html>
<script>
    // <!--第三步:初始化Datatables-->
    $(document).ready( function () {
        $('#table_id_example').DataTable({
            serverSide:true,
            "ajax": " http://localhost/2.23zuoye/public/index.php/index/index/indexs",
            "columns": [
                {"data": "id"},
                {"data": "title"},
                {"data": "name"},
                {"data": "desn"},
            ]
        });
    } );
</script>

后端代码

    public function indexs(Request $request){
//        获取到分页开始的位置
        $start=$request->get('start');
//        获取到分页结束的位置
        $length=$request->get('length');
//        获取到搜索的条件
        $search=$request->get('search.value');
//        Illuminate\Support\Facades\Redis
        $data=Db::table('zfw_articles')->where('title','like',"%$search%")->limit($start,$length)->select();
        foreach ($data as $key=>&$val){
                $val['title'] =str_replace($search, "<font style='color: #ff0000'>$search</font>",$val['title']);
        }
        return json(['code'=>200,'msg'=>'查询成功','data'=>$data]);
    }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
后端分页是一种解决前端加载大量数据缓慢的问题的方法。它通过前端传递当前页码以及当前页显示的数据量给后端后端只查询当前页要进行展示的数据,从而避免了由于数据量过大而导致的卡顿问题。在后端分页中,每次页码不变但条数增加的情况下,可以通过修改后端查询数据的逻辑来实现。 具体来说,你可以在后端的查询逻辑中,根据当前页码和当前页显示的数据量来计算出需要查询的数据的起始位置和结束位置。然后,根据这个范围来查询数据库中的数据,并将查询结果返回给前端进行展示。这样,无论每次页码不变但条数增加,后端都可以根据传递的参数来查询对应的数据,实现后端分页的效果。 需要注意的是,你还需要在前端的代码中进行相应的修改,确保传递给后端的参数包括当前页码和当前页显示的数据量。这样,前端和后端才能进行正确的数据交互,实现后端分页的功能。 引用\[3\]中提供了一个关于后端分页的基础代码,你可以参考其中的逻辑来实现每次页码不变但条数增加的后端分页功能。根据你的具体需求,你可能需要对这段代码进行一些修改和调整,以适应你的项目要求。 #### 引用[.reference_title] - *1* *3* [【DataTable】关于实现DataTable后端分页过程中的一些问题总结](https://blog.csdn.net/weixin_41477980/article/details/86684077)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [datatables跳转自定义页面(后端分页)](https://blog.csdn.net/Js_123456789/article/details/101715413)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值