>  기사  >  웹 프론트엔드  >  Jquery JSON 새로 고침 페이징 구현 없음 code_jquery

Jquery JSON 새로 고침 페이징 구현 없음 code_jquery

WBOY
WBOY원래의
2016-05-16 18:30:36920검색

控件类代码:

复代码 代码如下:

시스템 사용;
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")]
네임스페이스 Hawkon.Control {
[DefaultProperty("Text")]
[ToolboxData("< ;{0}:PageBar runat=server>")]
public class PageBar : WebControl {
[Bindable(true)]
[Category("Data") ]
[DefaultValue("1")]
[Localized(true)]
public int PageIndex {
get {
return pageIndex;
}
set {
pageIndex = value;
}
}
private int pageIndex;
[Bindable(true)]
[Category("Data")]
[DefaultValue("1")]
[Localized(true)]
public int PageCount {
get {
페이지 수 반환;
}
set {
pageCount = 값;
}
}
private int pageCount;
[Bindable(true)]
[Category("Data")]
[DefaultValue("5")]
[Localized(true)]
public int DisplayCount {
get {
return displayCount;
}
set {
displayCount = 값;
}
}
private int displayCount;
보호된 재정의 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 = 페이지 인덱스 디스플레이 카운트;
}
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"));
출력.쓰기(html);
}
비공개 문자열 CreateA(int pageIndex, string text) {
if (pageIndex == this.pageIndex) {
return string.Format("{1} ", pageIndex, text);
}
return string.Format("{1} ", 페이지 인덱스, 텍스트);
}
보호된 재정의 void OnPreRender(EventArgs e) {
base.OnPreRender(e);
string resourcesName = "PageBarJS.js";
string url = this.Page.ClientScript.GetWebResourceUrl(this.GetType(), "PageBarJS.js");
string script = "rn";
this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), 자원 이름, 스크립트, false);
script = @""; this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "준비", 스크립트);
}
protected override void Render(HtmlTextWriterwriter) {
base.Render(writer);
}
}
}

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

var displayCount;
var getDataUrl;
var bookTableId;
var currentIndex;
var pageCount;
var linkClass;
var 필드;
function InitPageBar(dc, gdu, btId,pc,lc) {
displayCount = dc;
getDataUrl = gdu;
bookTableId = btId;
현재지수 = 1;
페이지카운트 = 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- 자식("나는")";
obj = 결과.데이터[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 인덱스 - 2
}
else {
i = result.CurrentPageIndex - displayCount 인덱스 - 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
}
}
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 = 결과.CurrentPageIndex;
}


HTML页face代码:


复代码 代码如下:





<일>
书name

<일>
작가

<일>
类别















<바닥글 템플릿>












Ajax请求地址返回的JSON数据:

复主代码 代码如下:

{"데이터":[{"제목":"C#.NET 프로그래밍 - 외국 컴퓨터 과학 고전 교과서","CategoryName":".NET","저자":"Bradley(Bradley, J.C.) , 작성: Millspaugh, A.C., 번역: Tianhong Studio","Id":5392},{"Title":"C#2.0 (Bible) (첨부)","CategoryName" :"C C VC VC ","저자" :"Compiled by Zhang Li","Id":5027},{"Title":"C#2.0 완전한 자율 학습 매뉴얼(CD 포함)","CategoryName":"C C VC VC ","저자":" Zhang Li et al.이 편집함.","Id":5081},{"Title":"C#2005 데이터베이스 프로그래밍 클래식 튜토리얼","CategoryName":"C C VC VC ","Author" :"(미국) 작성 작성자: Karli watton, 번역: Chen Qiuping","Id":4983},{"제목":"C# 프로그래밍 자습서 - 컴퓨터 기초 과정 시리즈 교과서","CategoryName":"C C VC VC " ,"저자":"Zheng Aqi, Chief Editor Liang Jingdong","Id":5127},{"Title":"C# 프로그래머 참조 매뉴얼","CategoryName":"C C VC VC ","Author":"Grant 작성: Palmer, 번역: Kangbo ","Id":5132},{"Title":"C# 및 .NET 핵심 기술 - 개발자 전문 기술 시리즈","CategoryName":"C C VC VC ","Author":" (미국) 작성자: Perry, S.C., Xiao Bin 및 기타 번역자","Id":5104},{"Title":"C# 기본 및 예제 자습서(CD-ROM 포함)","CategoryName" :" C C VC VC ","저자" :"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 }
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.





<%# Eval("제목") %>

<%# Eval("저자") %>

<%# Eval("카테고리.이름")%>

删除

설명