最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Jquery+JSon 無刷新分頁實現(xiàn)代碼

 更新時間:2010年04月01日 23:21:07   作者:  
基于jquery+json格式文件的無刷新分頁實現(xiàn)代碼,需要的朋友可以參考下。
控件類代碼:
復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Reflection;
using System.IO;
[assembly: WebResource("PageBarJS.js", "application/x-javascript")]
namespace Hawkon.Control {
[DefaultProperty("Text")]
[ToolboxData("<{0}:PageBar runat=server></{0}:PageBar>")]
public class PageBar : WebControl {
[Bindable(true)]
[Category("Data")]
[DefaultValue("1")]
[Localizable(true)]
public int PageIndex {
get {
return pageIndex;
}
set {
pageIndex = value;
}
}
private int pageIndex;
[Bindable(true)]
[Category("Data")]
[DefaultValue("1")]
[Localizable(true)]
public int PageCount {
get {
return pageCount;
}
set {
pageCount = value;
}
}
private int pageCount;
[Bindable(true)]
[Category("Data")]
[DefaultValue("5")]
[Localizable(true)]
public int DisplayCount {
get {
return displayCount;
}
set {
displayCount = value;
}
}
private int displayCount;
protected override void RenderContents(HtmlTextWriter output) {
string html = "";
html += CreateA(1, "<<");
int b = 0, e = 0;
if (pageIndex <= displayCount) {
b = 1;
e = displayCount * 2 + 1;
}
else if (pageIndex > pageCount - displayCount) {
b = pageCount - displayCount * 2;
e = pageCount;
}
else {
b = pageIndex - displayCount;
e = pageIndex + displayCount;
}
if (b <= 1) {
html += CreateA(1, "");
}
else
html += CreateA(b - 1, "");
for (int i = b; i <= e; i++) {
html += CreateA(i, i.ToString());
}
html += CreateA(e + 1, "");
html += CreateA(pageCount, ">>");
// html += string.Format("<script src='{0}' type='text/javascript'></script>",
// this.Page.ClientScript.GetWebResourceUrl(typeof(PageBar), "JScript1.js"));
output.Write(html);
}
private string CreateA(int pageIndex, string text) {
if (pageIndex == this.pageIndex) {
return string.Format("<a class=\"pageA\" title='頁' id =\"{0}\">{1}</a>&nbsp;", pageIndex, text);
}
return string.Format("<a class=\"pageA\" title='頁' href=\"#\" id=\"{0}\">{1}</a>&nbsp;", pageIndex, text);
}
protected override void OnPreRender(EventArgs e) {
base.OnPreRender(e);
string resourceName = "PageBarJS.js";
string url = this.Page.ClientScript.GetWebResourceUrl(this.GetType(), "PageBarJS.js");
string script = "\r\n<script src=\"" + HttpUtility.HtmlAttributeEncode(url) + "\" type=\"text/javascript\"></script>";
this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), resourceName, script, false);
script = @"<script type=""text/javascript"">$(document).ready(function() {InitPageBar(5, ""BookListByPage"", ""Books "", 50,""pageA"");});</script>"; this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "ready", script);
}
protected override void Render(HtmlTextWriter writer) {
base.Render(writer);
}
}
}

JS資源文件代碼:
復制代碼 代碼如下:

var displayCount;
var getDataUrl;
var bookTableId;
var currentIndex;
var pageCount;
var linkClass;
var fields;
function InitPageBar(dc, gdu, btId,pc,lc) {
displayCount = dc;
getDataUrl = gdu;
bookTableId = btId;
currentIndex = 1;
pageCount = pc;
linkClass = "."+lc;
$(linkClass).click(GetPage);
}
function GetPageById(id) {
$("#CI").val(id);
var surl = getDataUrl+"?pageIndex=" + id;
$.ajax({
url: surl,
type: "GET",
dataType: "json",
timeout: 1000,
success: showResult
}
);
}
function GetPage() {
GetPageById($(this).get(0).id);
}
function showResult(result) {
for (i = 1; i <= result.Data.length; i++) {
var id = "#" + bookTableId + " tr:nth-child(" + i + ")";
obj = result.Data[i - 1];
for (var key in obj) {
ctl = $(id).find("." + key);
if (ctl.length > 0) {
ctl.get(0).innerHTML = obj[key];
}
}
}
$(linkClass).each(function(index) {
var i, b, e;
if (result.CurrentPageIndex <= displayCount) {
b = 1;
e = (displayCount + 1) * 2;
i = index - 2 + 1;
}
else if (result.CurrentPageIndex > pageCount - displayCount) {
b = pageCount - displayCount * 2;
e = pageCount;
i = pageCount - displayCount * 2 + index - 2;
}
else {
i = result.CurrentPageIndex - displayCount + index - 2;
b = result.CurrentPageIndex - displayCount - 1;
e = result.CurrentPageIndex + displayCount + 1;
}
if ($(this).get(0).id == $(this).text()) {
$(this).text(i);
}
else if (index == 1) {
if (b <= 1) {
$(this).get(0).id = 1;
}
else {
$(this).get(0).id = b - 1;
}
}
else if (index == displayCount * 2 + 3) {
$(this).get(0).id = e;
}
$(this).attr("href", "#");
if ((i >= b) && (i <= e)) {
$(this).get(0).id = i;
}
if ($(this).text == result.CurrentPageIndex) {
$(this).removeAttr("href");
}
});
currentIndex = result.CurrentPageIndex;
}

HTML頁面代碼:
復制代碼 代碼如下:

<form runat="server" id="form1">
<div>
<asp:Repeater ID="rptBooks" runat="server">
<HeaderTemplate>
<table id="Books" width="90%" cellspacing="0" style="font-size:12px;">
<tr>
<th>
書名
</th>
<th>
作者
</th>
<th>
類別
</th>
<th width="30px">
</th>
<th width="30px">
</th>
</tr>
<tbody id="Data">
<tr>
</HeaderTemplate>
<ItemTemplate>
<td class="Title">
<%# Eval("Title") %>
</td>
<td class="Author">
<%# Eval("Author") %>
</td>
<td class="CategoryName">
<%# Eval("Categories.Name")%>
</td>
<td>
<a href="#" id='<%# Eval("Id") %>' class="delBook">刪除</a>
</td>
<td>
<a href='BookDetail/<%# Eval("Id") %>' class="details">詳細</a>
</td>
</ItemTemplate>
<SeparatorTemplate>
</tr><tr>
</SeparatorTemplate>
<FooterTemplate>
</tr></tbody>
<tr>
<td colspan="3">
<cc1:PageBar ID="PageBar1" runat="server" PageCount="100" DisplayCount="5" PageIndex="1" />
<input type="text" id = "CI" />
</td>
</td>
</tr>
</table>
</FooterTemplate>
</asp:Repeater>
</div>
</form>

Ajax請求地址返回的JSON數(shù)據(jù):
復制代碼 代碼如下:

{"Data":[{"Title":"C#.NET程序設計——國外計算機科學經(jīng)典教材","CategoryName":".NET","Author":"布拉德利(Bradley,J.C.),米爾斯波(Millspaugh,A.C.) 著, 天宏工作室 譯","Id":5392},{"Title":"C#2.0〔寶典)(附盤)","CategoryName":"C C++ VC VC++","Author":"張立 編著","Id":5027},{"Title":"C#2.0完全自學手冊(附CD)","CategoryName":"C C++ VC VC++","Author":"張立 等編著","Id":5081},{"Title":"C#2005數(shù)據(jù)庫編程經(jīng)典教程","CategoryName":"C C++ VC VC++","Author":"(美)沃頓(Karli watton) 著,陳秋萍 譯","Id":4983},{"Title":"C#程序設計教程——計算機基礎課程系列教材","CategoryName":"C C++ VC VC++","Author":"鄭阿奇,梁敬東 主編","Id":5127},{"Title":"C#程序員參考手冊","CategoryName":"C C++ VC VC++","Author":"Grant Palmer 著,康博 譯","Id":5132},{"Title":"C#和.NET核心技術——開發(fā)人員專業(yè)技術叢書","CategoryName":"C C++ VC VC++","Author":"(美)佩里(Perry,S.C.) 著,肖斌 等譯","Id":5104},{"Title":"C#基礎與實例教程(附CD-ROM光盤一張)","CategoryName":"C C++ VC VC++","Author":"郝春強 編著","Id":5071},{"Title":"C#軟件項目開發(fā)全程剖析","CategoryName":"C C++ VC VC++","Author":"(德)侯姆,(德)克魯格,(德)斯普達 著,薛興濤,袁勤勇 譯","Id":5034},{"Title":"C#設計模式——開發(fā)大師系列","CategoryName":"C C++ VC VC++","Author":"(美)麥斯科 著,顏炯 譯","Id":4954}],"CurrentPageIndex":15,"PageCount":1074}

相關文章

  • JQuery+drag.js上傳圖片并且實現(xiàn)圖片拖曳

    JQuery+drag.js上傳圖片并且實現(xiàn)圖片拖曳

    這篇文章主要介紹了JQuery+drag.js上傳圖片并且實現(xiàn)圖片拖曳,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • jQuery實現(xiàn)拼圖小游戲(實例講解)

    jQuery實現(xiàn)拼圖小游戲(實例講解)

    下面小編就為大家?guī)硪黄猨Query實現(xiàn)拼圖小游戲(實例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • jquery 為a標簽綁定click事件示例代碼

    jquery 為a標簽綁定click事件示例代碼

    jquery 為a標簽綁定click事件,當被點擊時執(zhí)行一些動作,示例代碼如下,需要的朋友可以參考參考
    2014-06-06
  • jquery如何改變html標簽的樣式(兩種實現(xiàn)方法)

    jquery如何改變html標簽的樣式(兩種實現(xiàn)方法)

    對于如何修飾html標簽,這對于js來說,可以通過setAttribute來設置標簽的屬性,通過getAttribute來得到標簽的屬性,而在jq中當然也可以實現(xiàn)類似的功能,方法上肯定比js要簡化多了,接下來介紹實現(xiàn)方法,感興趣的朋友可以了解下
    2013-01-01
  • jQuery圖片切換動畫效果

    jQuery圖片切換動畫效果

    這篇文章主要介紹了jQuery圖片切換動畫效果,處理動畫延遲,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • iframe子頁面獲取父頁面元素的方法

    iframe子頁面獲取父頁面元素的方法

    取得iframe中元素的方法有很多,在本文為大家介紹下在iframe子頁面獲取父頁面元素的方法,下面有個不錯的示例,感興趣的朋友可以參考下
    2013-11-11
  • jquery UI Datepicker時間控件沖突問題解決

    jquery UI Datepicker時間控件沖突問題解決

    這篇文章主要介紹了jquery UI Datepicker時間控件沖突問題的解決,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • JQuery設置時間段下拉選擇實例

    JQuery設置時間段下拉選擇實例

    這篇文章主要介紹了JQuery設置時間段下拉選擇的實現(xiàn)方法,實例分析了根據(jù)時間段設置下拉選項的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2014-12-12
  • 加載列表時jquery獲取ul中第一個li的屬性

    加載列表時jquery獲取ul中第一個li的屬性

    通過jquery獲取ul中第一個li的屬性,當加載列表時,默認希望選中第一條,下面是具體的實現(xiàn)代碼
    2014-11-11
  • JQuery中屬性過濾選擇器用法實例分析

    JQuery中屬性過濾選擇器用法實例分析

    這篇文章主要介紹了JQuery中屬性過濾選擇器用法,實例分析了jQuery屬性過濾選擇器的相關使用技巧,需要的朋友可以參考下
    2015-05-05

最新評論

昆山市| 霍邱县| 宜宾市| 巴东县| 汶川县| 英超| 紫云| 积石山| 隆林| 阿尔山市| 平定县| 板桥市| 吴桥县| 阿克| 体育| 祁阳县| 莱阳市| 抚顺市| 库伦旗| 屏山县| 克什克腾旗| 平南县| 河东区| 新丰县| 化德县| 钟山县| 江华| 新郑市| 宿松县| 东宁县| 临洮县| 宝应县| 湘阴县| 泸西县| 扎兰屯市| 芒康县| 怀宁县| 错那县| 长阳| 西宁市| 什邡市|