javascript(jquery)利用函数修改全局变量的代码


Posted in Javascript onNovember 02, 2009

我是将当前页用一个全局变量存储。同时在“最后一页”链接里单击方法调用一个函数自动去修改页数为最后一页,然后再调用载入评论的方法。
可是我发现点击“最后一页”第一次的时候系统没反应,再点击一次就抓去最后一页的资料了!
要说全局变量没改,应该是改了,就仿佛改了页数而载入评论的方法失效了一样。
代码如下:

var page = 1; //初始化页数为第一页 
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("已经是第一页了!") 
} 
}) 
$("a#next").click(function() { 
if (page < pagecount) { 
++page; 
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 lostguest = function() { 
$.ajax({ 
url: 'SqlHelper.ashx?page=' + 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 += "<p id='xuhao'>序号:" + n.序号 + "发表日期" + n.日期 + "用户名:" + n.操作员 + "</p>"; 
str += "<p id='content'>内容:" + n.事件 + "</p>"; 
}); 
$("#guest").append(str); 
$("#loading").hide(); 
} 
else { 
alert("0"); 
} 
} 
}) 
}

也不知道是怎么回事?各位高手能否解释一下??
PS:后来找了一个变通的方法,实现了这个效果。代码如下:
var page = 1; 
var str = ""; 
var pagecount; //存储总页数 
$(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 (page < pagecount) { 
++page; 
lostguest(); 
} 
else { 
alert("已经是最后一页了!"); 
} 
}) 
$("a#all").click(function() { 
page = pagecount; //更新当前页数为总页数 
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) { 
pagecount = Number(count); //读取总页数 
} 
}) 
} 
var lostguest = function() { 
$.ajax({ 
url: 'SqlHelper.ashx?page=' + 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 += "<p id='xuhao'>序号:" + n.序号 + "发表日期" + n.日期 + "用户名:" + n.操作员 + "</p>"; 
str += "<p id='content'>内容:" + n.事件 + "</p>"; 
}); 
$("#guest").append(str); 
$("#loading").hide(); 
} 
else { 
alert("0"); 
} 
} 
}) 
}

第一个代码的问题各位高手能否解释一下??谢谢!
Javascript 相关文章推荐
jQuery dialog 异步调用ashx,webservice数据的代码
Aug 03 Javascript
jQuery随便控制任意div隐藏的方法
Jun 28 Javascript
jQuery Animation实现CSS3动画示例介绍
Aug 14 Javascript
JS图像无缝滚动脚本非常好用
Feb 10 Javascript
js脚本分页代码分享(7种样式)
Aug 19 Javascript
JS弹出对话框实现方法(三种方式)
Dec 18 Javascript
JavaScript中实现键值对应的字典与哈希表结构的示例
Jun 12 Javascript
jquery实现瀑布流效果 jquery下拉加载新数据
Dec 12 Javascript
详解jQuery停止动画——stop()方法的使用
Dec 14 Javascript
vue单页面实现当前页面刷新或跳转时提示保存
Nov 02 Javascript
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
Sep 25 Javascript
基于JavaScript实现单例模式
Oct 30 Javascript
一个可以兼容IE FF的加为首页与加入收藏实现代码
Nov 02 #Javascript
JS OOP包机制,类创建的方法定义
Nov 02 #Javascript
JQuery 网站换肤功能实现代码
Nov 02 #Javascript
Javascript结合css实现网页换肤功能
Nov 02 #Javascript
cnblogs csdn 代码运行框实现代码
Nov 02 #Javascript
键盘 keycode的值 javascript时触发事件时很有用的要素
Nov 02 #Javascript
js 函数的执行环境和作用域链的深入解析
Nov 01 #Javascript
You might like
php中将时间差转换为字符串提示的实现代码
2011/08/08 PHP
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
2014/10/14 PHP
PHP GD库生成图像的几个函数总结
2014/11/19 PHP
ThinkPHP框架设计及扩展详解
2014/11/25 PHP
PHP利用APC模块实现文件上传进度条的方法
2015/01/26 PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
2016/12/29 PHP
PHP编程实现微信企业向用户付款的方法示例
2017/07/26 PHP
JavaScipt基本教程之JavaScript语言的基础
2008/01/16 Javascript
JavaScript字符串String和Array操作的有趣方法
2012/12/18 Javascript
jQuery中ajax的load()方法用法实例
2014/12/26 Javascript
javascript包装对象实例分析
2015/03/27 Javascript
jQuery自定义数值抽奖活动代码
2016/06/11 Javascript
深入浅析knockout源码分析之订阅
2016/07/12 Javascript
纯JavaScript手写图片轮播代码
2016/10/20 Javascript
如何利用JQuery实现从底部回到顶部的功能
2016/12/27 Javascript
Vue+axios实现统一接口管理的方法
2018/07/23 Javascript
微信小程序在地图选择地址并返回经纬度简单示例
2018/12/03 Javascript
vue 中 beforeRouteEnter 死循环的问题
2019/04/23 Javascript
Vue 实现拨打电话操作
2020/11/16 Javascript
python中常用的各种数据库操作模块和连接实例
2014/05/29 Python
python简单实现刷新智联简历
2016/03/30 Python
Python实现定时精度可调节的定时器
2018/04/15 Python
对numpy中array和asarray的区别详解
2018/04/17 Python
浅谈python实现Google翻译PDF,解决换行的问题
2018/11/28 Python
python3利用ctypes传入一个字符串类型的列表方法
2019/02/12 Python
python实现kmp算法的实例代码
2019/04/03 Python
Python+opencv+pyaudio实现带声音屏幕录制
2019/12/23 Python
python实现在一个画布上画多个子图
2020/01/19 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
用python制作个音乐下载器
2021/01/30 Python
中东奢侈品市场:Coveti
2019/05/12 全球购物
意大利奢侈品购物网站:Deliberti
2019/10/08 全球购物
英国运动服、设备及配件网站:DW Sports
2019/12/04 全球购物
承租经营合作者协议书
2014/10/01 职场文书
2014年学校体育工作总结
2014/12/08 职场文书
十大最强电系宝可梦,阿尔宙斯电系之一,第七被称为雷神
2022/03/18 日漫