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实战_读书笔记1—选择jQuery
Jan 22 Javascript
javascript每日必学之继承
Feb 23 Javascript
在Html中使用Requirejs进行模块化开发实例详解
Apr 15 Javascript
js实现无缝循环滚动
Jun 23 Javascript
最常见的左侧分类菜单栏jQuery实现代码
Nov 28 Javascript
Bootstrap基本插件学习笔记之Popover提示框(19)
Dec 08 Javascript
jQuery实现的简单排序功能示例【冒泡排序】
Jan 13 Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
Jan 14 Javascript
JS中Select下拉列表类(支持输入模糊查询)功能
Jan 17 Javascript
利用Js+Css实现折纸动态导航效果实例源码
Jan 25 Javascript
node.js中路由,中间件,ge请求和post请求的参数详解
Dec 26 Javascript
Vue 实现输入框新增搜索历史记录功能
Oct 15 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数据库抽象层 PDO
2011/05/07 PHP
php微信支付之APP支付方法
2015/03/04 PHP
图像替换新技术 状态域方法
2010/01/28 Javascript
详解JavaScript中shift()方法的使用
2015/06/09 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
node koa2实现上传图片并且同步上传到七牛云存储
2017/07/31 Javascript
JS+canvas绘制的动态机械表动画效果
2017/09/12 Javascript
js保留两位小数方法总结
2018/01/31 Javascript
代码实例ajax实现点击加载更多数据图片
2018/10/12 Javascript
jQuery实现的别踩白块小游戏完整示例
2019/01/07 jQuery
微信小程序select下拉框实现效果
2019/05/15 Javascript
通过JQuery,JQueryUI和Jsplumb实现拖拽模块
2019/06/18 jQuery
Vue数据双向绑定底层实现原理
2019/11/22 Javascript
微信小程序实现抖音播放效果的实例代码
2020/04/11 Javascript
React组件设计模式之组合组件应用实例分析
2020/04/29 Javascript
深入分析jQuery.one() 函数
2020/06/03 jQuery
Vue两种组件类型:递归组件和动态组件的用法
2020/08/06 Javascript
解决vue项目axios每次请求session不一致的问题
2020/10/24 Javascript
如何使用RoughViz可视化Vue.js中的草绘图表
2021/01/30 Vue.js
python中__call__方法示例分析
2014/10/11 Python
python静态方法实例
2015/01/14 Python
python 实现求解字符串集的最长公共前缀方法
2018/07/20 Python
python开发准备工作之配置虚拟环境(非常重要)
2019/02/11 Python
详解python读取image
2019/04/03 Python
使用Python和Scribus创建一个RGB立方体的方法
2019/07/17 Python
python os.fork() 循环输出方法
2019/08/08 Python
python爬虫利用代理池更换IP的方法步骤
2021/02/21 Python
Cynthia Rowley官网:全球领先的生活方式品牌
2020/10/27 全球购物
下述程序的作用是计算机数组中的最大元素值及其下标
2012/11/26 面试题
中专毕业生自荐信范文
2013/11/28 职场文书
职业规划书如何设计?
2014/01/09 职场文书
文化活动实施方案
2014/03/28 职场文书
2014年文学毕业生自我鉴定
2014/04/23 职场文书
2016年优秀少先队辅导员事迹材料
2016/02/26 职场文书
Python Pytorch查询图像的特征从集合或数据库中查找图像
2022/04/09 Python
python 学习GCN图卷积神经网络
2022/05/11 Python