datables实现服务端分页并展示按钮传递ID值

datables实现服务端分页并展示按钮传递ID值

第一步

进行样式的引入样式操作


     
     
  1. <!--第一步:引入Javascript / CSS (CDN)-->
  2. <!-- DataTables CSS -->
  3. <link rel="stylesheet" type="text/css" href="http://cdn.datatables.net/1.10.21/css/jquery.dataTables.css">
  4. <!-- jQuery -->
  5. <script type="text/javascript" charset="utf8" src="http://code.jquery.com/jquery-1.10.2.min.js"> </script>
  6. <!-- DataTables -->
  7. <script type="text/javascript" charset="utf8" src="http://cdn.datatables.net/1.10.21/js/jquery.dataTables.js"> </script>

第二步

引入 HTML 代码, tboy 中可有不用进行 foreach 循环操作


     
     
  1. <!--第二步:添加如下 HTML 代码-->
  2. <table id="table_id_example" class="display">
  3. <thead>
  4. <tr>
  5. <th>ID </th>
  6. <th>姓名 </th>
  7. <th>年龄 </th>
  8. <td>性别 </td>
  9. <td>操作 </td>
  10. </tr>
  11. </thead>
  12. <tbody>
  13. </tbody>
  14. </table>

第三步

进行 datables 的初始化操作


     
     
  1. $(document).ready( function () {
  2. $( '#table_id_example').DataTable({
  3. // 开启分页
  4. paging: true,
  5. // scrollY:500,
  6. //每页显示条数
  7. lengthMenu:[3,5,7,10],
  8. //开启服务器模式
  9. serverSide: true,
  10. //后端请求
  11. ajax:{
  12. url: '{{route('admin.doctor.datatables ')}}',
  13. type: 'get'
  14. },
  15. //需要展示页面的数据
  16. columns:[
  17. {data: 'id'},
  18. {data: 'name'},
  19. {data: 'age'},
  20. {data: 'sex'},
  21. ]
  22. });
  23. });

第四步

进行控制器的书写操作


     
     
  1. //判断是否是ajax
  2. if ( $request->ajax()) {
  3. // 开启位置
  4. $start = $request->get( 'start', 0);
  5. // 获取记录数,健壮一点取最小值
  6. $length = min( 100, $request->get( 'length', 10));
  7. // 获取数据
  8. $data = Article::offset( $start)->limit( $length)->get();
  9. //记录总数
  10. $total = Article::count();
  11. /*
  12. draw: 客户端调用服务器端次数标识
  13. recordsTotal: 获取数据记录总条数
  14. recordsFiltered: 数据过滤后的总数量(和上面记录总数是一样的,无需理会)
  15. data: 获得的具体数据
  16. 注意:recordsTotal和recordsFiltered都设置为记录的总条数
  17. */
  18. $result = [
  19. 'draw' => $request->get( 'draw'),
  20. 'recordsTotal' => $total,
  21. 'recordsFiltered' => $total,
  22. 'data' => $data
  23. ];
  24. //返回数据
  25. return $result;
  26. }

第五步

模型层追加字段操作,展示出按钮的方式

并且传递出 ID 的操作,可以执行删除、修改等操作


     
     
  1. //另请别名
  2. protected $appends=[ 'action'];
  3. public function getActionAttribute()
  4. {
  5. return '
  6. //这个是详情的按钮,设置点击事件,并传递当前this,并指明ID数值
  7. <button><a href="#" οnclick="xq(this,'. $this->id. ')">详情</a></button>
  8. //这个是删除的按钮,设置点击事件,并传递当前this,并指明ID数值
  9. <button><a href="#" οnclick="delete_btn(this,'. $this->id. ')">删除</a></button>
  10. ';
  11. }

第六步

到达前端,并且去调用去使用它

使用 action 调用模型层的按钮 

使用 function 可以调用模型层设置点击事件名称 

</article>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值