jQuery實(shí)現(xiàn)Table分頁效果
本文實(shí)例為大家分享了jQuery實(shí)現(xiàn)Table分頁效果的具體代碼,供大家參考,具體內(nèi)容如下
CSS:
<style>
.pager {
font-size: 18px;
}
.pagerTotal {
font-size: 18px;
height: 36px;
line-height: 36px;
margin-left: 2px;
}
.pager_a {
display: block;
width: 36px;
height: 36px;
line-height: 36px;
float: left;
text-align: center;
border: 1px solid black;
color: black;
margin-left: 2px;
cursor: pointer;
}
.pager_a_red {
display: block;
width: 36px;
height: 36px;
line-height: 36px;
float: left;
text-align: center;
border: 1px solid red;
color: red;
font-weight: bold;
margin-left: 2px;
cursor: pointer;
}
</style>
HTML:
<span class="pager"></span> <span class="pagerTotal"></span>
<table>
<tr>
<th>品牌</th>
<th>店鋪</th>
<th>倉庫</th>
</tr>
<tbody id='tbody'></tbody>
</table>
<span class="pager"></span> <span class="pagerTotal"></span>
JavaScript:
<script>
//初始化
$(function () {
ReportPage(1);
});
//加載報(bào)表-分頁
function ReportPage(pageIndex) {
var index = pageIndex;//頁碼
var size = 500;//每頁條數(shù)
var startDate = $("#startDate").val();
$("tbody").empty();
$.ajax({
async: false,
type: "GET",
data: {
"startDate": startDate,
"pageIndex": index,
"pageSize": size,
},
url: "/Controller/GetData",
dataType: "json",
success: function (request) {
//拼表格
$.each(request.data, function (i, field) {
var html = "";
html += "<tr>";
html += "<td>" + field.品牌 + "</td>";
html += "<td>" + field.店鋪 + "</td>";
html += "<td>" + field.倉庫 + "</td>";
html += "</tr>";
$("#tbody").append(html);
});
Pages(pageIndex, request.allPage, request.total);//生成分頁
},
});
}
//分頁按鈕
function Pages(pageIndex, pageCount, pageTotal) {
$(".pagerTotal").html(" 總共:<font color='red'>" + pageTotal + "</font> 條數(shù)據(jù)!");
$(".pager").empty();
var page = "";
for (var i = 0; i < pageCount; i++) {
if ((i + 1) == pageIndex) {
page += "<span class='pager_a_red'>" + (i + 1) + "</span>";
}
else {
page += "<span class='pager_a' onclick='ReportPage(" + (i + 1) + ")'>" + (i + 1) + "</span>";
}
}
$(".pager").append(page);
}
</script>
MVC:
public ActionResult GetData(string startDate, int pageIndex, int pageSize)
{
string json = string.Empty;
if (!string.IsNullOrEmpty(startDate))
{
int total = 0;
int allPage = 0;
DataTable dt = bll.GetData(startDate, pageIndex, pageSize, out total, out allPage);
if (dt != null && dt.Rows.Count > 1)
{
json = JsonConvert.SerializeObject(new
{
total = total,//總記錄數(shù)
allPage = allPage,//總頁數(shù)
data = dt,//分頁后數(shù)據(jù)
});
}
}
return Content(json);
}
獲得分頁數(shù)據(jù)dataTable、總數(shù)據(jù)數(shù)total、總頁數(shù)allpage:
public DataTable GetDate(string startDate, int pageIndex, int pageSize, out int total, out int allPage)
{
//計(jì)算總數(shù)據(jù)數(shù) 和 總分頁數(shù)
string sqlCount = "select count(*) from table where date='"+startDate+"'";//獲取數(shù)據(jù)總數(shù)
total = int.Parse(SqlHelper.GetSingel(sqlCount ).ToString());//總數(shù)據(jù)行數(shù)
allPage = total / pageSize;//總分頁個(gè)數(shù) = 總數(shù)據(jù)行數(shù) / 每頁行數(shù)
allPage += total % pageSize == 0 ? 0 : 1;//不足一頁也算一頁
//獲取分頁數(shù)據(jù)
string sql = "";
sql = "DECLARE @PageIndex INT;";
sql = "DECLARE @PageSize INT;";
sql = "SET @PageIndex=" + pageIndex;
sql = "SET @PageSize=" + pageSize;
sql += " SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY ID desc) rownum, * FROM table where date ='"+ startDate +"')a";
sql += " WHERE rownum > @PageSize * (@PageIndex - 1) AND rownum <= @PageSize * @PageIndex";
sql += " order by ID desc";
DataTable dt = SqlHelper.GetDate(sql);//分頁數(shù)據(jù)
return dt;
}
預(yù)覽:

點(diǎn)擊頁碼會(huì)重新調(diào)用ajax獲取新的數(shù)據(jù)。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
jquery判斷checkbox是否選中及改變checkbox狀態(tài)的實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄猨query判斷checkbox是否選中及改變checkbox狀態(tài)的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-05-05
jQuery通過點(diǎn)擊行來刪除HTML表格行的實(shí)現(xiàn)示例
從一個(gè)HTML表使用一些時(shí)髦的效果,只要按一下該行,改行即可被刪除,這個(gè)示例比較簡單,新手朋友們可以學(xué)習(xí)下2014-09-09
jQuery選擇器源碼解讀(六):Sizzle選擇器匹配邏輯分析
這篇文章主要介紹了jQuery選擇器源碼解讀(六):Sizzle選擇器匹配邏輯分析,,需要的朋友可以參考下2015-03-03
jQuery 學(xué)習(xí)第六課 實(shí)現(xiàn)一個(gè)Ajax的TreeView
TreeView是asp.net自帶的控件,不過自帶的控件在靈活性上有諸多限制。在jQuery的幫助下,自己實(shí)現(xiàn)一個(gè)TreeView也不困難。本文是前幾篇文章所講內(nèi)容的一個(gè)綜合演練。2010-05-05
jQuery Validate 相關(guān)參數(shù)及常用的自定義驗(yàn)證規(guī)則
這篇文章主要介紹了jQuery Validate 相關(guān)參數(shù)及常用的自定義驗(yàn)證規(guī)則,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03
Jquery操作下拉框(DropDownList)實(shí)現(xiàn)取值賦值
Jquery操作下拉框(DropDownList)想必大家都有所接觸吧,下面與大家分享下對DropDownList進(jìn)行取值賦值的實(shí)現(xiàn)代碼2013-08-08

