濮阳杆衣贸易有限公司

主頁 > 知識庫 > 用AJAX實現(xiàn)的無刷新的分頁實現(xiàn)代碼(asp.net)

用AJAX實現(xiàn)的無刷新的分頁實現(xiàn)代碼(asp.net)

熱門標簽:如何用地圖標注各分公司 電銷機器人適用范圍 接聽電話機器人哪有 莆田防封電銷卡價格 察縣地圖標注 蓄意標記地圖標注 信貸電銷機器人有用嗎 辦理一個400電話多少錢 廣西ai語音電銷機器人哪家好
之前,服務器返回的數(shù)據(jù)都是用xml的形式傳給客戶端的,但是xml傳一個類的對象的數(shù)據(jù)會很長,流量大,所以現(xiàn)在都是改用json來傳數(shù)據(jù),復雜數(shù)據(jù)用json,簡單數(shù)據(jù)用string。所有AJAX中的x已經(jīng)失去了它原來的意義。
  大家都知道JQuery,是一個Javascript的封裝庫,當然JQuery也實現(xiàn)了對AJAX的封裝,這里將分頁就是直接用JQuery框架來講哈,比較簡單。
  首先講一下原理:分頁有兩個要點:1.有多少頁,2.每頁有多少條記錄??傢摂?shù)和每頁數(shù)據(jù)都是要從服務器端返回的。所以我們就先來建一個一般處理程序:PageService.ashx,處理用戶的請求。取得頁數(shù)參數(shù):GetPageCount,取得頁數(shù)據(jù)參數(shù)用GetPagedData,和PageNo。一下是一般處理程序PageService.ashx代碼:
PageService.ashx
復制代碼 代碼如下:

public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
string action=context.Request["action"];
if (action == "GetPageCount") //如果請求類型為取得總頁數(shù),則如下處理。
{
//該方法是建立在強連接DataSet內(nèi)的,取得總記錄數(shù)的方法
int counts = new CommentTableAdapter().GetComentCount().Value;
int page = counts / 10; //默認每頁10條數(shù)據(jù)
if (counts%10 != 0)
{
page++;
}
context.Response.Write(page); //取得數(shù)據(jù)后返回給客戶端。
}
else if (action == "GetPageData") //請求類型是取得某頁的數(shù)據(jù),則還會傳一個頁碼過來
{
int pageNo = Convert.ToInt32(context.Request["PageNo"]);
//該方法是給出頁數(shù),去數(shù)據(jù)庫表內(nèi)取得對應頁的數(shù)據(jù)
var data = new CommentTableAdapter().GetPageData((pageNo-1)*10+1,pageNo*10);
var p1 = data.Select( c =>new {c.name,c.Comment });
JavaScriptSerializer jss = new JavaScriptSerializer();
//將取得數(shù)據(jù)用json序列化后傳回客戶端
context.Response.Write(jss.Serialize(p1));
}
}

接下來是在htm頁面呈現(xiàn)數(shù)據(jù)。
  我在這里只是講原理,所以美工方面就不苛求了。假設每頁數(shù)據(jù)都是放在一個ul>li>/li>/ul>里面,一個li就裝一條數(shù)據(jù)。頁碼放在一個table內(nèi)顯示,一行n列的table,每一列就一個頁面。
body>
ul id="Comment">/ul>br />
頁數(shù):
table id="pageNo">/table>
/body>
接下來就是用JQuery,在頁面加載的時候給Comment這個ul和pageNo這個table初始化數(shù)據(jù)。頁面加載默認顯示第一頁數(shù)據(jù)。以下是:無刷新分頁.htm頁面的JQuery代碼:
無刷新分頁.htm
復制代碼 代碼如下:

script type="text/javascript">
$(function(){
//-----------------------------------------------------------
function getPageData(pageNo){ //取得某頁數(shù)據(jù)的方法
$.post("PageService.ashx",{"action":"GetPageData","PageNo":pageNo},function(data,status){
if(status=="success"){
$("#Comment").empty();
var comments=$.parseJSON(data); //反序列化json數(shù)據(jù)。
for(var i=0;icomments.length;i++){
var row=comments[i];
var li= $("li>"+row.name+" : "+row.Comment+"/li>");
$("#Comment").append(li); //每取出一條數(shù)據(jù)就創(chuàng)建一個li并append到Comment/ul內(nèi)。
}
}
});
}
//-------------------------------------------------------------------
getPageData(1); //首次進入頁面,看到的是第一頁的數(shù)據(jù)
//----------------------------------------------------------------/
//取得所有的頁數(shù)并且初始化分頁按鈕
$.post("PageService.ashx",{"action":"GetPageCount"},function(data,status){
if(status=="success"){
var tr1=$("tr>/tr>");
var pageNo=parseInt(data);
for(var i=1;i=pageNo;i++){
var td=$("td>a href=''>"+i+"/a>/td>");
tr1.append(td);
}
$("#pageNo").append(tr1);
$("#pageNo a").click(function(e){ //頁碼創(chuàng)建后,就為每一個頁碼監(jiān)聽一個click事件。
e.preventDefault(); //取消a的默認跳轉(zhuǎn)行為
getPageData($(this).html()); //點擊后就去執(zhí)行取頁數(shù)據(jù)的操作。
});
}
});
//----------------------------------------------------------------------------
});
/script>

歡迎各位指正,謝謝。
您可能感興趣的文章:
  • JQuery+Ajax無刷新分頁的實例代碼
  • jQuery Pagination Ajax分頁插件(分頁切換時無刷新與延遲)中文翻譯版
  • JS+Ajax+Jquery實現(xiàn)頁面無刷新分頁以及分組 超強的實現(xiàn)
  • php+ajax實現(xiàn)無刷新分頁的方法
  • AspNetAjaxPager,Asp.Net通用無刷新Ajax分頁控件,支持多樣式多數(shù)據(jù)綁定
  • ajax實現(xiàn)無刷新分頁(php)
  • php ajax無刷新分頁,支持id定位
  • 在Thinkphp中使用ajax實現(xiàn)無刷新分頁的方法
  • php+ajax實現(xiàn)無刷新分頁
  • 簡單實現(xiàn)Ajax無刷新分頁效果

標簽:張掖 銅陵 儋州 益陽 阿拉善盟 鷹潭 延邊

巨人網(wǎng)絡通訊聲明:本文標題《用AJAX實現(xiàn)的無刷新的分頁實現(xiàn)代碼(asp.net)》,本文關鍵詞  用,AJAX,實現(xiàn),的,無刷,新的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 下面列出與本文章《用AJAX實現(xiàn)的無刷新的分頁實現(xiàn)代碼(asp.net)》相關的同類信息!
  • 本頁收集關于用AJAX實現(xiàn)的無刷新的分頁實現(xiàn)代碼(asp.net)的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    衡山县| 汉中市| 湖州市| 嘉善县| 呼图壁县| 托克逊县| 随州市| 高淳县| 新晃| 云浮市| 寻乌县| 扶风县| 商南县| 竹溪县| 卢龙县| 白河县| 宝清县| 绥化市| 盐城市| 阳朔县| 改则县| 怀安县| 汽车| 凉山| 岑巩县| 定边县| 十堰市| 新郑市| 金乡县| 津南区| 白银市| 云安县| 日照市| 成安县| 库尔勒市| 伊吾县| 常州市| 泰安市| 凭祥市| 博客| 利辛县|