現在のページをグローバル変数に保存します。同時に、「最後のページ」リンク内のメソッドをクリックして、ページ番号を自動的に最終ページに変更する関数を呼び出し、コメントをロードするメソッドを呼び出します。
しかし、初めて「最後のページ」をクリックしたときにシステムが応答せず、もう一度クリックすると最後のページの情報がキャプチャされたことがわかりました。
グローバル変数が変わっていないということは、ページ番号を変更するとコメントの読み込みメソッドが無効になるのと同じように、グローバル変数も変更されているはずです。
コードは次のとおりです:
var page = 1; / /ページ番号を最初のページに初期化します
var str = ""
$(document).ready(function() {
lostguest(); //ロードするメソッドコメント
$( "a#first").click(function() {
page = 1;
lostguest();
}); .click(function() {
if (page > 1) {
--page;
lostguest();
}
else {
page = 1;
alert("すでに最初のページです! ")
}
})
$("a#next").click(function() {
if (page < pagecount) {
ページ;
lostguest();
}
else {
alert("最後のページです!");
$("a #all ").click(function() {
getpagecount();
lostguest();
});
})
var getpagecount = function() {
var type = "GetPageCount";
$.ajax({
url: 'GetCount.ashx?type=' type,
type: "GET",
dataType: 'text',
beforeSend: function() {
},
error: function() {
alert('システムログレコード数の取得に失敗しました');
},
success: function( count) {
pages = Number(count);
}
})
}
var lossguest = function() {
$.ajax({
url: ' SqlHelper.ashx?page =' ページ、
type: "GET"、
dataType: 'json'、
beforeSend: function() {
$("#loading").show() ;
} ,
エラー: function() {
alert('システムログの取得に失敗しました');
},
成功: function(msg) {
$(" #guest").empty ();
if (msg != "0") {
var data = msg.log;
str = "";
$.each(data, function (i, n) {
str = "
シリアル番号:" n.シリアル番号"発行日" n.Date"ユーザー名:" n.オペレーター"
";
str = "
Content:" n.Event"
";
});
$("#guest").append (str);
$("#loading").hide();
}
else {
alert("0")
}
} )
}
何が起こっているのか分かりません?専門家の方は説明していただけますか? ?
追記: その後、この効果を達成するための回避策を見つけました。コードは次のとおりです:
$(document).ready(function() {
getpagecount(); //総ページ数を取得します
lostguest ();
$("a#first").click(function() {
page = 1;
lostguest();
}) ;
$("a#last ").click(function() {
if (page > 1) {
--page;
lostguest();
}
else {
page = 1;
alert("すでに最初のページです!")
}
})
$("a#next").click(function() {
if (ページ < ページ数) {
ページ;
lostguest();
else {
alert("最後のページです!");
})
$("a#all").click(function() {
page = pagecount; //現在のページ番号を総ページ数に更新します
lostguest();
});
})
var getpagecount = function() {
var type = "GetPageCount";
$.ajax({
url: 'GetCount.ashx?type =' タイプ、
タイプ: "GET"、
dataType: 'text'、
beforeSend: function() {
}、
error: function() {
alert( 'システムログレコード数の取得に失敗しました') ;
},
success: function(count) {
pagecount = Number(count); // 読み取られたページの総数
}
})
}
var lossguest = function() {
$.ajax({
url: 'SqlHelper.ashx?page=' ページ,
type: "GET",
dataType: 'json',
beforeSend: function() {
$("#loading").show();
},
error: function() {
alert('システムログの取得に失敗しました');
},
success: function(msg) {
$("#guest").empty();
if (msg != " 0") {
var data = msg.log ;
str = "";
$.each(data, function(i, n) {
str = "
シリアル番号: " n. シリアル番号" 発行日 "n.Date" ユーザー名: "n.Operator"
";
str = "
コンテンツ: "n.Event"
" ;
});
$("#guest").append(str);
$("#loading").hide() ;
}
else {
alert("0");
}
})
}
専門家は説明できますか?最初のコードに問題があるのでしょうか? ?ありがとう!