JQuery與JSon實(shí)現(xiàn)的無刷新分頁代碼
如圖
而無刷新分頁可以解決這個(gè)問題,上面播放著視頻,下面我點(diǎn)下一頁看著評論,現(xiàn)在大部分的網(wǎng)站都是無刷新分頁。
源碼如下(我是采用一頁顯示10條記錄):
需要四個(gè)文件
一個(gè)實(shí)體類文件 CategoryInfoModel.cs
一個(gè)SqlHelper SQLHelper.cs
一個(gè)AJAX服務(wù)端處理程序 PagedService.ashx
一個(gè)客戶端調(diào)用頁面 WSXFY.htm
CategoryInfoModel.cs和SQLHelper.cs我就不寫了,都知道是什么文件
PagedService.ashx 代碼如下
using System.Web.Script.Serialization;
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
string strAction = context.Request["Action"];
//取頁數(shù)
if (strAction == "GetPageCount")
{
string strSQL = "SELECT COUNT(*) FROM CategoryInfo";
int intRecordCount = SqlHelper.ExecuteScalar(strSQL);
int intPageCount = intRecordCount / 10;
if (intRecordCount % 10 != 0)
{
intPageCount++;
}
context.Response.Write(intPageCount);
}//取每頁數(shù)據(jù)
else if (strAction == "GetPageData")
{
string strPageNum = context.Request["PageNum"];
int intPageNum = Convert.ToInt32(strPageNum);
int intStartRowIndex = (intPageNum - 1) * 10 + 1;
int intEndRowIndex = (intPageNum) * 10 + 1;
string strSQL = "SELECT * FROM ( SELECT ID,CategoryName,Row_Number() OVER(ORDER BY ID ASC) AS rownum FROM CategoryInfo) AS t";
strSQL += " WHERE t.rownum >= " + intStartRowIndex + " AND t.rownum <= " + intEndRowIndex;
DataSet ds = new DataSet();
SqlConnection conn = SqlHelper.GetConnection();
ds = SqlHelper.ExecuteDataset(conn, CommandType.Text, strSQL);
List<CategoryInfoModel> categoryinfo_list = new List<CategoryInfoModel>();//定義實(shí)體集合
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
CategoryInfoModel categoryinfo = new CategoryInfoModel();
categoryinfo.CategoryInfoID = Convert.ToInt32(ds.Tables[0].Rows[i]["ID"]);
categoryinfo.CategoryName = ds.Tables[0].Rows[i]["CategoryName"].ToString();
categoryinfo_list.Add(categoryinfo);
}
JavaScriptSerializer jss = new JavaScriptSerializer();
context.Response.Write(jss.Serialize(categoryinfo_list));//序列化實(shí)體集合為javascript對象
}
}
WSXFY.htm 代碼如下
<head>
<title>無刷新分頁</title>
<script type="text/javascript" src="../Scripts/jquery-1.5.1.min.js"></script>
<script type="text/javascript">
$(function () {
$.post("PagedService.ashx", { "Action": "GetPageCount" }, function (response, status) {
for (var i = 1; i <= response; i++) {
var td = $("<td><a href=''>" + i + "</a></td>");
$("#trPage").append(td);
td.click(function (e) {
e.preventDefault(); //不要導(dǎo)向鏈接
$.post("PagedService.ashx", { "Action": "GetPageData", "PageNum":$(this).text() }, function (response, status) {
var categorys = $.parseJSON(response);
$("#ulCategory").empty();
for (var i = 0; i < categorys.length; i++) {
var category = categorys[i];
var li = $("<li>" + category.CategoryInfoID + "-" + category.CategoryName + "</li>");
$("#ulCategory").append(li);
}
});
});
}
});
});
</script>
</head>
<body>
<ul id="ulCategory"></ul>
<table>
<tr id="trPage">
</tr>
</table>
</body>
</html>
效果如下(頁面好不好看取決于你畫DOM 的水平了,我這里只是簡單的畫了畫)

- jquery插件pagination實(shí)現(xiàn)無刷新ajax分頁
- jQuery插件jPaginate實(shí)現(xiàn)無刷新分頁
- JQuery+Ajax無刷新分頁的實(shí)例代碼
- jQuery 無刷新分頁實(shí)例代碼
- 基于jquery的無刷新分頁技術(shù)
- jquery+ashx無刷新GridView數(shù)據(jù)顯示插件(實(shí)現(xiàn)分頁、排序、過濾功能)
- Jquery+JSon 無刷新分頁實(shí)現(xiàn)代碼
- php jquery 實(shí)現(xiàn)新聞標(biāo)簽分類與無刷新分頁
- jquery pagination插件實(shí)現(xiàn)無刷新分頁代碼
- jQuery無刷新分頁完整實(shí)例代碼
相關(guān)文章
jQuery 添加/移除CSS類實(shí)現(xiàn)代碼
在網(wǎng)頁設(shè)計(jì)中,我們常常要使用Javascript來改變頁面元素的樣式。2010-02-02實(shí)例講解jquery中mouseleave和mouseout的區(qū)別
這篇文章主要以實(shí)例詳細(xì)講解了jquery中mouseleave和mouseout的區(qū)別,模仿下拉框效果,感興趣的小伙伴們可以參考一下2016-02-02jquery中map函數(shù)遍歷數(shù)組用法實(shí)例
這篇文章主要介紹了jquery中map函數(shù)遍歷數(shù)組用法,實(shí)例分析了jQuery中map函數(shù)遍歷數(shù)組的相關(guān)技巧,并提供了一個(gè)自定義遍歷數(shù)組函數(shù)供參考之用,需要的朋友可以參考下2015-05-05jQuery點(diǎn)擊改變class并toggle及toggleClass()方法定義用法
這篇文章主要介紹了jQuery點(diǎn)擊改變class并toggle及toggleClass()方法定義用法的相關(guān)資料,需要的朋友可以參考下2015-12-12JQuery中serialize()、serializeArray()和param()方法示例介紹
serialize()方法也是作用于一個(gè)JQuery對象,它能夠?qū)OM元素內(nèi)容序列化為字符串,serializeArray()方法不是返回字符串,而是將DOM元素序列化后,返回JSON格式的數(shù)據(jù)2014-07-07jQuery實(shí)現(xiàn)獲取動(dòng)態(tài)添加的標(biāo)簽對象示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)獲取動(dòng)態(tài)添加的標(biāo)簽對象,涉及jQuery針對頁面元素的動(dòng)態(tài)添加、元素獲取與事件響應(yīng)相關(guān)操作技巧,需要的朋友可以參考下2018-06-06關(guān)于頁面加載即執(zhí)行JQuery的三種方法小結(jié)
這篇文章主要介紹了關(guān)于頁面加載即執(zhí)行JQuery的三種方法小結(jié),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10讓頁面上兩個(gè)div中的滾動(dòng)條(滑塊)同步運(yùn)動(dòng)示例
如何想讓頁面上兩個(gè)div中的滾動(dòng)條(滑塊)同步運(yùn)動(dòng)該怎實(shí)現(xiàn),具體代碼如下,感興趣的朋友可以參考下2013-08-08jquery 將disabled的元素置為enabled的三種方法
在jquery中可以通過jqueryObj.attr("disabled","disabled")將頁面中某個(gè)元素置為不可編輯或觸發(fā)狀態(tài),但是在jquery的API reference中并沒說明怎么將頁面置為disable的元素重新置為可觸發(fā)或可編輯的。2009-07-07