JS ページング コントロール。非リフレッシュ ページングに使用できます
function PagerBar(recordcount, pagesize, pageindex, showpagecount) {
var NumberRegex = new RegExp(/^d $/);
this.PageIndex = 1;
if (pageindex != null && NumberRegex.test(pageindex)) this.PageIndex = parseInt(pageindex);
this.PageSize = 10; //ページ サイズ
if (pagesize != null && NumberRegex .test(pagesize)) this.PageSize = parseInt(pagesize);
this.RecordCount = 0;
if (recordcount != null && NumberRegex.test(recordcount)) this.RecordCount = parseInt(recordcount); //合計レコード数
this.PageCount = 0; //合計ページ数
var PagerBar = this;
function CalculatePageCount(_pagesize, _recordcount) {//合計ページ数を計算します
if (_pagesize != null && NumberRegex.test(_pagesize)) PagerBar.PageSize = parseInt(_pagesize);
if (_recordcount != null && NumberRegex.test(_recordcount)) PagerBar.RecordCount = parseInt(_recordcount);
else PagerBar. RecordCount = 0;
if (PagerBar.RecordCount % PagerBar.PageSize == 0) {//総ページ数を計算
PagerBar.PageCount = parseInt(PagerBar.RecordCount / PagerBar. PageSize);
}
else {
PagerBar.PageCount = parseInt(PagerBar.RecordCount / PagerBar.PageSize) 1;
}
}
if (this.RecordCount != 0 ) {// CalculatePageCount(this.PageSize, this.RecordCount);
}
this.ReplaceString = "《#PageLink》" // ページ番号のテキストを置換することはできません。正規表現内の記号である
this.ShowPagesCount = 5; //ページ数を表示
if (showpagecount != null && NumberRegex.test(showpagecount.toString())) this.ShowPagesCount = parseInt( showpagecount); 🎜> this.PreviouBarFormat = ""; //前のページのテキスト形式を表示
this.IsShowPreviouString = true; //前のページを表示するかどうか
this.NextBarFormat = "" //次のテキストを表示1 ページの形式
this.IsShowNextString = true; //次のページを表示するかどうか
this.PageBarFormat = ""; //ページ接続時にテキスト形式を表示します
this.CurrentBarFormat = "" / / 現在のページに表示されるテキスト形式
this.IsShowPageString = true // ページインデックスを表示するかどうか
this.FristBarFormat = "" // ホームページリンクに表示されるテキスト形式
this; .IsShowFristString = true; // ホームページを表示するかどうか
this.LastBarFormat = "" //最後のページの表示テキスト形式
this.IsShowLastString = true; //最後のページを表示するかどうかthis.CurrentRecordBarFormat = "現在のレコード {0}-{1} "; //現在のレコードの表示テキスト形式
this.IsShowCurrentRecordString = true; //現在のレコードを表示するかどうか
this.CurrentPageBarFormat = "現在のページ" this.ReplaceString ", total" (this.PageCount == 0 ? 1: this.PageCount) "page"; //現在のページの説明テキスト形式
this.IsShowCurrentPageString = true; //現在のページを表示するかどうかページテキストの説明 text
this.OtherBarFormat = ""; //その他のテキストも表示します
this.IsShowOtherString = true; //他のページのテキストを表示するかどうか
var regexp = new RegExp(this.ReplaceString, 「g」) }
}
function GetPreviouPageString() { //前のページのテキストを取得します
if (PagerBar.PreviouBarFormat != "") {
if (PagerBar.RecordCount > PagerBar.PageSize && PagerBar.PageIndex != 1) {//前のページの HTML 出力
return PagerBar.PreviouBarFormat.replace(regexp, PagerBar.PageIndex - 1);
}
}
if ( PagerBar.CurrentBarFormat != "" && PagerBar.PageBarフォーマット!= "") {
var ShowPageFirest = PagerBar.PageIndex - parseInt(PagerBar.ShowPagesCount / 2 1) < 0 ? 0 : PagerBar.PageInt(PagerBar. ShowPagesCount / 2 1);表示ページ数
if (PagerBar.PageCount < PagerBar.ShowPagesCount) {//合計数が表示ページ数未満の場合
ShowPageFirest = 0> }
ShowPageFirest = pagerbar.showpagescount。 && pagerbar.pageIndex!= pagerbar.pagecount){// html
の次のページを出力
else {
return "";
}
}
else {
return "";
}
}
関数getLastPagestring(){// ) {
return PagerBar.LastBarFormat.replace(regexp, PagerBar.PageCount);
}
else {
return "";
}
}
function GetFrontOtherPageString() {//获取前其它页链接
if (PagerBar.OtherBarFormat != "") {
if (PagerBar.ページインデックス > PagerBar.ShowPagesCount / 2 1) {
return PagerBar.OtherBarFormat.replace(regexp, PagerBar.PageIndex - PagerBar.ShowPagesCount <= 0 ? 1 : PagerBar.PageIndex - PagerBar.ShowPagesCount)
}
else {
"" を返す;
}
}
else {
return "";
}
}
function GetAfterOtherPageString() {//获取後其它页链接
if (PagerBar.OtherBarFormat != "") {
if (PagerBar.PageIndex & lt;= ページャーバー。 PageCount - PagerBar.ShowPagesCount / 2) {
return PagerBar.OtherBarFormat.replace(regexp,
PagerBar.PageIndex PagerBar.ShowPagesCount >= PagerBar.PageCount ? PagerBar.PageCount : .PageIndex PagerBar.ShowPagesCount);
}
else {
return "";
}
}
else {
return "";
}
}
function GetCurrentRecordPageString() {//获取当前记录文本
if (PagerBar.CurrentRecordBarFormat != "") {
if (PagerBar.RecordCount == 0) ) {
「」を返します。
}
else { PagerBar.RecordCount ? PagerBar.PageIndex * PagerBar.PageSize);
}
}
それ以外の場合は "" を返します。
}
function GetCurrentPageBarString() {//現在のページ レコード テキストを取得します
if (PagerBar.CurrentPageBarFormat != "") {
return PagerBar.CurrentPageBarFormat.replace(regexp, PagerBar.PageIndex);
}
else return "";
}
this.GetString = function (pageindex) {//出力 HTML コード (すべてのモード)
if (pageindex != null && NumberRegex.test(pageindex) ) {//ページ インデックスが渡される場合は、値を割り当てます
this.PageIndex = parseInt(pageindex);
}
var pagestr = "" ;
if (this.IsShowCurrentPageString) {
pagestr = GetCurrentPageBarString(); 🎜> pagestr = GetFristPageString();
🎜> if (this.IsShowPreviouString) {
pagestr = GetPrevouPageString( );
if (this.IsShowOtherString) {
pagestr = GetF rontOtherPageString(); this.IsShowPageString) {
pagestr = GetPageString();
if (this. IsShowOtherString) {
pagestr = GetAfterOtherPageString() } {
> return pagestr;
}
this.GetNormalString = function (pageindex) {
If (pageindex ! = null && NumberRegex.test (pageindex)) {//ページ インデックスが渡される場合は、値を割り当てます
this.PageIndex = parseInt(pageindex)
; var pagestr = "";
pagestr = GetFristPageString(); > pagestr = GetPageString();
pagestr = GetNextPageString();
Assignment
this.PageIndex = parseInt(pageindex);
}
If (this.PageCount == 0) {//総ページ数が計算されていない場合は、総ページ数を計算します
CalculatePageCount(this.PageSize, this.RecordCount)
}
var pagestr = "";
pagestr = GetPreviouPageString();
pagestr = GetCurrentPageBarString();
使用例:
まだありません
コンテンツに必要な知識ポイント
改ページ "#PageLink"