laravel框架實現ajax分頁


1、控制器層
/**
* AJAX分頁
*/
public function page()
{
//查詢數據庫總條數
$count = count(Db::table('goods')->get());
//設置每頁顯示條數
$rev = "4";
//求總頁數
$sums = ceil($count/$rev);
//求當前頁
$page = Input::get('page');
if(empty($page)){
$page = "1";
}
//設置上一頁 下一頁
$prev = ($page-1)>0?$page-1:1;
$next = ($page+1)<$sums?$page+1:$sums;
//求偏移量
$offset = ($page-1)*$rev;
//sql 查詢數據庫
$data = DB::select("select * from goods limit $offset,$rev");
return view('show.page',['data'=>$data,'prev'=>$prev,'next'=>$next,'sums'=>$sums,'page'=>$page]);
}

2、視圖層 page.blade.php
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
</head>
<body>
<div id="box" align="center">

<table border="1">
<tr>
<td>產品名稱</td>
<td>產品單價</td>
<td>產品庫存</td>
</tr>
@foreach($data as $val)
<tr>
<td>{{$val->name}}</td>
<td>{{$val->price}}</td>
<td>{{$val->store}}</td>
</tr>
@endforeach

</table>
<a href="javascript:void(0)" onclick="page(1)">首頁</a>
<a href="javascript:void(0)" onclick="page(<?php echo $prev ?>)">上一頁</a>
<a href="javascript:void(0)" onclick="page(<?php echo $next ?>)">下一頁</a>
<a href="javascript:void(0)" onclick="page(<?php echo $sums ?>)">尾頁</a>
</div>
</body>
</html>
<script>
function page(page) {
$.ajax({
type:"get",
url:"page",
data:{page:page},
success:function(msg){
if(msg){
$("#box").html(msg)
}
}
})
}

</script>

效果就是這樣
結束。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM