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 相关文章推荐
Chrome Form多次提交表单问题的解决方法
May 09 Javascript
JQuery动态创建DOM、表单元素的实现代码
Aug 09 Javascript
JS阻止冒泡事件以及默认事件发生的简单方法
Jan 17 Javascript
JavaScript中一个奇葩的IE浏览器判断方法
Apr 16 Javascript
js style动态设置table高度
Oct 21 Javascript
JS实现当前页居中分页效果的方法
Jun 18 Javascript
使用AngularJS 跨站请求如何解决jsonp请求问题
Jan 16 Javascript
ES6下React组件的写法示例代码
May 04 Javascript
JavaScript中的高级函数
Jan 04 Javascript
Vue.js项目实战之多语种网站的功能实现(租车)
Aug 07 Javascript
在vant中使用时间选择器和popup弹出层的操作
Nov 04 Javascript
详细聊聊vue中组件的props属性
Nov 02 Vue.js
一个可以兼容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在数组中查找指定值的方法
2015/03/17 PHP
深入解析PHP的Yii框架中的缓存功能
2016/03/29 PHP
php使用curl并发减少后端访问时间的方法分析
2016/05/12 PHP
php操作redis数据库常见方法实例总结
2020/02/20 PHP
Javascript 判断 object 的特定类转载
2007/02/01 Javascript
根据IP的地址,区分不同的地区,查看不同的网站页面的js代码
2013/02/26 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
2013/05/27 Javascript
jquery插件开发注意事项小结
2013/06/04 Javascript
node.js中的fs.futimes方法使用说明
2014/12/17 Javascript
AngularJS基础 ng-keydown 指令简单示例
2016/08/02 Javascript
谈谈对JavaScript原生拖放的深入理解
2016/09/20 Javascript
对vue.js中this.$emit的深入理解
2018/02/23 Javascript
红黑树的插入详解及Javascript实现方法示例
2018/03/26 Javascript
js实现web调用摄像头 js截取视频画面
2019/04/21 Javascript
浅谈Vuex注入Vue生命周期的过程
2019/05/20 Javascript
vue+echarts实现中国地图流动效果(步骤详解)
2021/01/27 Vue.js
解析Python中的生成器及其与迭代器的差异
2016/06/20 Python
Python引用计数操作示例
2018/08/23 Python
Python中@property的理解和使用示例
2019/06/11 Python
python实时检测键盘输入函数的示例
2019/07/17 Python
Win10环境python3.7安装dlib模块趟过的坑
2019/08/01 Python
jupyter 使用Pillow包显示图像时inline显示方式
2020/04/24 Python
jupyter notebook的安装与使用详解
2020/05/18 Python
Dr. Martens马汀博士法国官网:马丁靴鼻祖
2020/01/15 全球购物
什么是servlet
2012/05/08 面试题
课程设计心得体会
2013/12/28 职场文书
2014年应届大学生自我评价
2014/01/09 职场文书
基层党组织公开承诺书
2014/03/28 职场文书
保护母亲河倡议书
2014/04/14 职场文书
《鹬蚌相争》教学反思
2014/04/22 职场文书
教师自我剖析材料
2014/09/29 职场文书
会计岗位职责
2015/02/03 职场文书
李白故里导游词
2015/02/12 职场文书
财务稽核岗位职责
2015/04/13 职场文书
Python语言规范之Pylint的详细用法
2021/06/24 Python
JavaScript执行机制详细介绍
2021/12/06 Javascript