Jquery JSon の更新ページング実装なし code_jquery

WBOY
リリース: 2016-05-16 18:30:36
オリジナル
919 人が閲覧しました

制御件类代码:

复制代码 代码如下:

using System;
System.Collections.Generic を使用;
System.ComponentModel を使用します。
System.Linq を使用;
System.Text を使用;
System.Web を使用;
System.Web.UI を使用;
System.Web.UI.WebControls を使用します。
System.Reflection を使用します。
System.IO を使用;
[アセンブリ: WebResource("PageBarJS.js", "application/x-javascript")]
namespace Hawkon.Control {
[DefaultProperty("Text")]
[ToolboxData("< ;{0}:PageBar runat=server>")]
public class PageBar : WebControl {
[Bindable(true)]
[Category("Data") ]
[DefaultValue("1")]
[Localizable(true)]
public int PageIndex {
get {
return pageIndex;
}
set {
pageIndex = 値;
}
}
private int pageIndex;
[Bindable(true)]
[Category("Data")]
[DefaultValue("1")]
[Localizable(true)]
public int PageCount {
get {
return pageCount;
}
set {
pageCount = 値;
}
}
private int pageCount;
[Bindable(true)]
[Category("Data")]
[DefaultValue("5")]
[Localizable(true)]
public int DisplayCount {
get {
return displayCount;
}
set {
displayCount = 値;
}
}
private int displayCount;
protected override void RenderContents(HtmlTextWriter 出力) {
string html = "";
html = CreateA(1, "<<");
int b = 0、e = 0;
if (pageIndex <= displayCount) {
b = 1;
e = 表示カウント * 2 1;
}
else if (pageIndex > pageCount - displayCount) {
b = pageCount - displayCount * 2;
e = ページ数;
}
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("",
// 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("{1} "、pageIndex、text);
}
return string.Format("{1} ",ページインデックス、テキスト);
}
protected override void OnPreRender(EventArgs e) {
base.OnPreRender(e);
文字列リソース名 = "PageBarJS.js";
文字列 url = this.Page.ClientScript.GetWebResourceUrl(this.GetType(), "PageBarJS.js");
string script = "rn";
this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), resourceName, script, false);
script = @""; this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "準備完了", script);
}
protected override void Render(HtmlTextWriter Writer) {
base.Render(writer);
}
}
}

JS资源文件代码:
复制代代码如下:

var displayCount;
var getDataUrl;
var bookTableId;
var currentIndex;
var pageCount;
var linkClass;
var フィールド;
関数 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 var id = "#" bookTableId " tr:nth- child(" i ")";
obj = result.Data[i - 1];
for (obj の var key) {
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 = インデックス - 2 1;
else if (result.CurrentPageIndex > pageCount) {
b = ページカウント - 表示カウント * 2;
e = ページカウント;
i = ページカウント - 表示カウント - 2;
}
i = result.CurrentPageIndex -表示カウントインデックス - 2;
b = result.CurrentPageIndex - 表示カウント - 1;
e = result.CurrentPageIndex 表示カウント 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 $(this).get(0).id = i; 🎜>}
if ($(this).text == result.CurrentPageIndex) {
$(this).removeAttr("href");
}
});
currentIndex = result.CurrentPageIndex;
}


HTML页面代:



复制代
代码如下:



书名


作成者


类别































<%# Eval("作成者") %>

<%# Eval("カテゴリ.名前")%>

删除

详细







Ajax 请要求地址に返される JSON データ:



复制代码
代码如下:

{"Data":[{"Title":"C#.NET プログラミング - 外国のコンピュータサイエンス古典教科書","CategoryName":".NET","著者":"Bradley (Bradley, J.C.) 、Millspaugh, A.C. 著、Tianhong Studio 翻訳","Id":5392},{"Title":"C#2.0 (聖書) (添付)","CategoryName" :"C C VC VC ","著者" :"張立著","Id":5027},{"タイトル":"C#2.0 完全独習マニュアル (CD 付)","CategoryName":"C C VC VC ","著者":" Zhang Li らによって編纂されました。","Id":5081},{"Title":"C#2005 Database Programming Classic Tutorial","CategoryName":"C C VC VC ","Author" :" (米国) 著Karli watton 著、Chen Qiuping 訳","Id":4983},{"Title":"C# プログラミング チュートリアル - コンピューター基礎コース シリーズ 教科書","CategoryName":"C C VC VC " ,"Author":"Zheng Aqi、編集長 Liang Jingdong","Id":5127},{"Title":"C# Programmer Reference Manual","CategoryName":"C C VC VC ","Author":"Grant パーマー著、カンボ訳","Id":5132},{"Title":"C# および .NET Core テクノロジ - 開発者プロフェッショナル テクノロジ シリーズ","CategoryName":"C C VC VC ","著者":" (米国) Perry 著S.C.、Xiao Bin 他訳","Id":5104},{"Title":"C# 基礎と例題チュートリアル (CD-ROM 付)","CategoryName" :" C C VC VC ","Author" :"Compiled by Hao Chunqiang","Id":5071},{"Title":"C# ソフトウェア プロジェクト開発の全プロセスの分析","CategoryName":"C C VC VC ","著者 ":" (ドイツ) ) Houm、(ドイツ) Kruger、(ドイツ) Spuda、翻訳: Xue Xingtao、Yuan Qinyong","Id":5034},{"Title":"C# デザイン パターン - 開発マスター シリーズ", "CategoryName":"C C VC VC ","著者":"(米国) Mesko、Yan Jiong 翻訳","Id":4954}],"CurrentPageIndex":15,"PageCount":1074 }
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート