首先創建一個MVC項目
自己新建好數據庫,列名自定義,不需要很多
我的表單Role
列名:
ID
Name
Remark
然後創建視圖
先建立表單
<div class="input-group">
<label>名稱:</label>
<input type="text" class="form-control" id="txtCondName" />
<input type="button" id="btnSearch" value="搜索" onclick="page(1);" />
</div>
<table class="table table-bordered">
<thead>
<tr>
<th>編號</th>
<th>名稱</th>
<th>備註</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<th>@item.ID</th>
<th>@item.Name</th>
<th>@item.Remark</th>
</tr>
}
</tbody>
</table>
創建一個nav區域
<nav aria-label="...">
<ul class="pagination">
<li class="page-item ">
共 @ViewBag.totalPages 頁,第
<input type="number" min="1" max="@ViewBag.totalPages" id="pageIndex" value="@ViewBag.pageIndex" />
頁,每頁顯示
<select id="pageSize" onchange="page(1);">
@{
var listPageSize = new List<int> { 5, 10, 20, 50, 100 };
}
@foreach (var item in listPageSize)
{
if (@ViewBag.pageSize == @item)
{
<option value="@item" selected="selected">@item</option>
}
else
{
<option value="@item">@item</option>
}
}
</select>
條
</li>
</ul>
<ul class="pagination">
<li class="page-item ">
<a class="page-link" href="javascript:page(1);" tabindex="-1" aria-disabled="true">首頁</a>
</li>
@if (@ViewBag.pageIndex > 1)
{
<li class="page-item"><a class="page-link" href="javascript:page(@ViewBag.pageIndex-1);">上頁</a></li>
}
else
{
<li class="page-item disabled"><a class="page-link" href="javascript:page(@ViewBag.pageIndex-1);">上頁</a></li>
}
<li class="page-item " aria-current="page">
<span class="page-link"> @ViewBag.pageIndex</span>
</li>
@if (@ViewBag.pageIndex < @ViewBag.totalPages)
{
<li class="page-item " aria-current="page">
<a class="page-link" href="javascript:page(@ViewBag.pageIndex+1);">下頁 </a>
</li>
}
else
{
<li class="page-item disabled" aria-current="page">
<a class="page-link" href="javascript:page(@ViewBag.pageIndex+1);">下頁 </a>
</li>
}
<li class="page-item">
<a class="page-link" href="javascript:page(@ViewBag.totalPages);">末頁</a>
</li>
<li class="page-item">
<input type="button" class="page-link" value="GO" onclick="go()" />
</li>
</ul>
</nav>
這些就是分頁代碼,上下首頁末頁
然後編輯好控制器內容
將需要定義的命名定義好,並返回值
public class RoleController : Controller
{
RbacDBEntities db = new RbacDBEntities();
// GET: Role
public ActionResult Index(int pageIndex=1,int pageSize=10,string name="")
{
var totalRows = db.Roles.Count();
var totalPages = Math.Ceiling(totalRows * 1.00 / pageSize);
ViewBag.totalPages = totalPages;
var roles = db.Roles.Where(p=>p.Name.Contains(name))
.OrderBy(p=>p.ID) //排序
.Skip((pageIndex-1) * pageSize) //跳過
.Take(pageSize) //取
.ToList();
ViewBag.pageIndex = pageIndex;
return View(roles);
}
}
以上代碼就可以做成一個簡單的分頁了