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 相关文章推荐
Apply an AutoFormat to an Excel Spreadsheet
Jun 12 Javascript
jQuery UI Dialog 创建友好的弹出对话框实现代码
Apr 12 Javascript
nullJavascript中创建对象的五种方法实例
May 07 Javascript
jQuery移除元素自动解绑事件实现思路及代码
May 31 Javascript
js仿微信语音播放实现思路
Dec 12 Javascript
原生javascript实现分页效果
Apr 21 Javascript
JavaScript 中定义函数用 var foo = function () {} 和 function foo()区别介绍
Mar 01 Javascript
React Native 图片查看组件的方法
Mar 01 Javascript
js拖动滑块和点击水波纹效果实例代码
Oct 16 Javascript
vue实现动态显示与隐藏底部导航的方法分析
Feb 11 Javascript
使用 Vue 实现一个虚拟列表的方法
Aug 20 Javascript
IE11下CKEditor在Bootstrap Modal中下拉问题的解决
Sep 25 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
php4的session功能评述(一)
2006/10/09 PHP
IIS环境下快速安装、配置和调试PHP5.2.0
2006/12/17 PHP
php date()日期时间函数详解
2010/05/16 PHP
php中注册器模式类用法实例分析
2015/11/03 PHP
php中遍历二维数组并以表格的形式输出的方法
2017/01/03 PHP
php 5.4 全新的代码复用Trait详解
2017/01/05 PHP
Ubuntu彻底删除PHP7.0的方法
2018/07/27 PHP
PHP get_html_translation_table()函数用法讲解
2019/02/16 PHP
javascript 面向对象全新理练之数据的封装
2009/12/03 Javascript
Dom与浏览器兼容性说明
2010/10/25 Javascript
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
JavaScript中的property和attribute介绍
2011/12/26 Javascript
浅谈javascript中的作用域
2012/04/07 Javascript
JS字符串累加Array不一定比字符串累加快(根据电脑配置)
2012/05/14 Javascript
动态读取JSON解析键值对的方法
2014/06/03 Javascript
详解js前端代码异常监控
2017/01/11 Javascript
JavaScript在form表单中使用button按钮实现submit提交方法
2017/01/23 Javascript
JS自动生成动态HTML验证码页面
2017/06/14 Javascript
在vue中使用jointjs的方法
2018/03/24 Javascript
你不可不知的Vue.js列表渲染详解
2019/10/01 Javascript
JavaScript禁止右击保存图片,禁止拖拽图片的实现代码
2020/04/28 Javascript
[03:09]2014DOTA2国际邀请赛 Mushi前队友送上祝福
2014/07/12 DOTA
python在windows下实现备份程序实例
2014/07/04 Python
在Python中使用SimpleParse模块进行解析的教程
2015/04/11 Python
python实现文件快照加密保护的方法
2015/06/30 Python
python 使用poster模块进行http方式的文件传输到服务器的方法
2019/01/15 Python
Python输出指定字符串的方法
2020/02/06 Python
Python读取Excel数据并生成图表过程解析
2020/06/18 Python
用canvas做一个DVD待机动画的实现代码
2019/04/12 HTML / CSS
文秘专业个人求职信
2013/12/22 职场文书
投标邀请书范文
2014/01/31 职场文书
一分钟演讲稿
2014/04/30 职场文书
服务宗旨标语
2014/07/01 职场文书
自我介绍演讲稿范文
2014/08/21 职场文书
党员批评与自我批评(5篇)
2014/09/23 职场文书
资料员岗位职责
2015/02/10 职场文书