javascript(jquery)利用函數(shù)修改全局變量的代碼
更新時間:2009年11月02日 13:55:11 作者:
現(xiàn)在博客系統(tǒng)的評論遇到一個問題,用戶點擊“最后一頁”鏈接之后就自動調(diào)取最后一頁的資料來顯示。
我是將當前頁用一個全局變量存儲。同時在“最后一頁”鏈接里單擊方法調(diào)用一個函數(shù)自動去修改頁數(shù)為最后一頁,然后再調(diào)用載入評論的方法。
可是我發(fā)現(xiàn)點擊“最后一頁”第一次的時候系統(tǒng)沒反應(yīng),再點擊一次就抓去最后一頁的資料了!
要說全局變量沒改,應(yīng)該是改了,就仿佛改了頁數(shù)而載入評論的方法失效了一樣。
代碼如下:
var page = 1; //初始化頁數(shù)為第一頁
var str = "";
$(document).ready(function() {
lostguest(); //載入評論的方法
$("a#first").click(function() {
page = 1;
lostguest();
});
$("a#last").click(function() {
if (page > 1) {
--page;
lostguest();
}
else {
page = 1;
alert("已經(jīng)是第一頁了!")
}
})
$("a#next").click(function() {
if (page < pagecount) {
++page;
lostguest();
}
else {
alert("已經(jīng)是最后一頁了!");
}
})
$("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('獲取系統(tǒng)日志記錄數(shù)失敗');
},
success: function(count) {
pages = Number(count);
}
})
}
var lostguest = function() {
$.ajax({
url: 'SqlHelper.ashx?page=' + page,
type: "GET",
dataType: 'json',
beforeSend: function() {
$("#loading").show();
},
error: function() {
alert('獲取系統(tǒng)日志失敗');
},
success: function(msg) {
$("#guest").empty();
if (msg != "0") {
var data = msg.log;
str = "";
$.each(data, function(i, n) {
str += "<p id='xuhao'>序號:" + n.序號 + "發(fā)表日期" + n.日期 + "用戶名:" + n.操作員 + "</p>";
str += "<p id='content'>內(nèi)容:" + n.事件 + "</p>";
});
$("#guest").append(str);
$("#loading").hide();
}
else {
alert("0");
}
}
})
}
也不知道是怎么回事?各位高手能否解釋一下??
PS:后來找了一個變通的方法,實現(xiàn)了這個效果。代碼如下:
var page = 1;
var str = "";
var pagecount; //存儲總頁數(shù)
$(document).ready(function() {
getpagecount(); //獲取總頁數(shù)的方法
lostguest();
$("a#first").click(function() {
page = 1;
lostguest();
});
$("a#last").click(function() {
if (page > 1) {
--page;
lostguest();
}
else {
page = 1;
alert("已經(jīng)是第一頁了!")
}
})
$("a#next").click(function() {
if (page < pagecount) {
++page;
lostguest();
}
else {
alert("已經(jīng)是最后一頁了!");
}
})
$("a#all").click(function() {
page = pagecount; //更新當前頁數(shù)為總頁數(shù)
lostguest();
});
})
var getpagecount = function() {
var type = "GetPageCount";
$.ajax({
url: 'GetCount.ashx?type=' + type,
type: "GET",
dataType: 'text',
beforeSend: function() {
},
error: function() {
alert('獲取系統(tǒng)日志記錄數(shù)失敗');
},
success: function(count) {
pagecount = Number(count); //讀取總頁數(shù)
}
})
}
var lostguest = function() {
$.ajax({
url: 'SqlHelper.ashx?page=' + page,
type: "GET",
dataType: 'json',
beforeSend: function() {
$("#loading").show();
},
error: function() {
alert('獲取系統(tǒng)日志失敗');
},
success: function(msg) {
$("#guest").empty();
if (msg != "0") {
var data = msg.log;
str = "";
$.each(data, function(i, n) {
str += "<p id='xuhao'>序號:" + n.序號 + "發(fā)表日期" + n.日期 + "用戶名:" + n.操作員 + "</p>";
str += "<p id='content'>內(nèi)容:" + n.事件 + "</p>";
});
$("#guest").append(str);
$("#loading").hide();
}
else {
alert("0");
}
}
})
}
第一個代碼的問題各位高手能否解釋一下??謝謝!
可是我發(fā)現(xiàn)點擊“最后一頁”第一次的時候系統(tǒng)沒反應(yīng),再點擊一次就抓去最后一頁的資料了!
要說全局變量沒改,應(yīng)該是改了,就仿佛改了頁數(shù)而載入評論的方法失效了一樣。
代碼如下:
復(fù)制代碼 代碼如下:
var page = 1; //初始化頁數(shù)為第一頁
var str = "";
$(document).ready(function() {
lostguest(); //載入評論的方法
$("a#first").click(function() {
page = 1;
lostguest();
});
$("a#last").click(function() {
if (page > 1) {
--page;
lostguest();
}
else {
page = 1;
alert("已經(jīng)是第一頁了!")
}
})
$("a#next").click(function() {
if (page < pagecount) {
++page;
lostguest();
}
else {
alert("已經(jīng)是最后一頁了!");
}
})
$("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('獲取系統(tǒng)日志記錄數(shù)失敗');
},
success: function(count) {
pages = Number(count);
}
})
}
var lostguest = function() {
$.ajax({
url: 'SqlHelper.ashx?page=' + page,
type: "GET",
dataType: 'json',
beforeSend: function() {
$("#loading").show();
},
error: function() {
alert('獲取系統(tǒng)日志失敗');
},
success: function(msg) {
$("#guest").empty();
if (msg != "0") {
var data = msg.log;
str = "";
$.each(data, function(i, n) {
str += "<p id='xuhao'>序號:" + n.序號 + "發(fā)表日期" + n.日期 + "用戶名:" + n.操作員 + "</p>";
str += "<p id='content'>內(nèi)容:" + n.事件 + "</p>";
});
$("#guest").append(str);
$("#loading").hide();
}
else {
alert("0");
}
}
})
}
也不知道是怎么回事?各位高手能否解釋一下??
PS:后來找了一個變通的方法,實現(xiàn)了這個效果。代碼如下:
復(fù)制代碼 代碼如下:
var page = 1;
var str = "";
var pagecount; //存儲總頁數(shù)
$(document).ready(function() {
getpagecount(); //獲取總頁數(shù)的方法
lostguest();
$("a#first").click(function() {
page = 1;
lostguest();
});
$("a#last").click(function() {
if (page > 1) {
--page;
lostguest();
}
else {
page = 1;
alert("已經(jīng)是第一頁了!")
}
})
$("a#next").click(function() {
if (page < pagecount) {
++page;
lostguest();
}
else {
alert("已經(jīng)是最后一頁了!");
}
})
$("a#all").click(function() {
page = pagecount; //更新當前頁數(shù)為總頁數(shù)
lostguest();
});
})
var getpagecount = function() {
var type = "GetPageCount";
$.ajax({
url: 'GetCount.ashx?type=' + type,
type: "GET",
dataType: 'text',
beforeSend: function() {
},
error: function() {
alert('獲取系統(tǒng)日志記錄數(shù)失敗');
},
success: function(count) {
pagecount = Number(count); //讀取總頁數(shù)
}
})
}
var lostguest = function() {
$.ajax({
url: 'SqlHelper.ashx?page=' + page,
type: "GET",
dataType: 'json',
beforeSend: function() {
$("#loading").show();
},
error: function() {
alert('獲取系統(tǒng)日志失敗');
},
success: function(msg) {
$("#guest").empty();
if (msg != "0") {
var data = msg.log;
str = "";
$.each(data, function(i, n) {
str += "<p id='xuhao'>序號:" + n.序號 + "發(fā)表日期" + n.日期 + "用戶名:" + n.操作員 + "</p>";
str += "<p id='content'>內(nèi)容:" + n.事件 + "</p>";
});
$("#guest").append(str);
$("#loading").hide();
}
else {
alert("0");
}
}
})
}
第一個代碼的問題各位高手能否解釋一下??謝謝!
相關(guān)文章
JavaScript BASE64算法實現(xiàn)(完美解決中文亂碼)
這篇文章主要介紹了JavaScript BASE64算法實現(xiàn)(完美解決中文亂碼),先用escape()對中文進行編碼.然后再進行base64編碼. 解碼時,再加入()對中文進行解碼,這樣就可以避免中文亂碼問題2017-01-01
javascript打印大全(打印頁面設(shè)置/打印預(yù)覽代碼)
打印頁面設(shè)置,打印頁面預(yù)覽在打印過程中經(jīng)常會遇到,網(wǎng)上搜集整理了一些實用的打印方法與大家分享,感興趣的朋友可以了解下哈2013-03-03
safari,opera嵌入iframe頁面cookie讀取問題解決方法
最近做的合作網(wǎng)站嵌入到對方的iframe中去,在safari,opera和有些版本的搜狗瀏覽器(內(nèi)核版本原因)中不能讀到cookie。2010-06-06
javascript限制文本框只允許輸入數(shù)字(曾經(jīng)與現(xiàn)在的方法對比)
很多時候需要用到限制文本框的數(shù)字輸入,試過許多方法,都不太理想,遂決定自己實現(xiàn)一個來玩玩,接下來介紹曾經(jīng)使用過的方法與自定義方法的對比,感興趣的朋友可以了解下啊2013-01-01

