本文实例讲述了jQuery基于ajax实现页面加载后检查用户登录状态的方法。分享给大家供大家参考,具体如下:

拥有会员功能的网站,如果会员已经登录,那么要显示相应的登录状态,而且这种显示的需求是在网站的每个页面都有的(目前国内网站貌似都是这么做的,还没有见过其他形式的状态显示方式),这样,在打开一个新的页面时就要知道这个会员是否已经登录,需要判断登录的状态。
1、解决方案。
为了能够实现在每一个页面判断会员登录状态的功能,我采用了页面时通过ajax传递参数通过后端返回的登录状态结果进行判断,当然,这种方式实现的前提是登录状态在后端可以保持或者能够查询到并且不利用页面向后端发送特别参数。
2、代码部分。
(1)html部分
<div id="state_content"></div>
(2)jquery部分
jQuery(document).ready(function ()
{
getUserData();
});
function getUserData()
{
var Option =
{
url: encodeURI('/Handler/AuthAccounts.ashx?action=getloginstate'),
type: "post",
dataType: 'text',
cache: false, //设置为 false 将不会从浏览器缓存中加载请求信息。
async: true, //(默认: true),所有请求均为异步请求。发送同步请求,请将此选项设置为 false。同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
timeout: 150000, //设置请求超时时间(毫秒)。此设置将覆盖全局设置。
error: function ()
{
},
success: function (data, textStatus)
{
if (data == null || data == undefined)
{
return false;
}
jsondata = eval('(' + data + ')');
if (jsondata.state == "success")
{
var weburl = '<a class="username">欢迎你,' + jsondata.message.split('|')[1] + '</a><a class="go_out" onclick="ExitLoginState()">退出</a>';
$("#state_content").html(weburl); //内容
}
else
{
var textList = '<a href="/Login/index.shtml" rel="external nofollow" rel="external nofollow" >【登录】</a><a href="/Register/index.shtml" rel="external nofollow" rel="external nofollow" >【注册】</a>';
$("#state_content").html(textList); //内容
}
},
beforeSend: function ()
{
}
};
jQuery.ajax(Option);
return false;
}
function ExitLoginState()
{
var Option =
{
url: encodeURI('/Handler/AuthAccounts.ashx?action=exitloginstate'),
type: "post",
dataType: 'text',
cache: false, //设置为 false 将不会从浏览器缓存中加载请求信息。
async: true, //(默认: true),所有请求均为异步请求。发送同步请求,请将此选项设置为 false。同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
timeout: 150000, //设置请求超时时间(毫秒)。此设置将覆盖全局设置。
error: function ()
{
},
success: function (data, textStatus)
{
if (data == null || data == undefined)
{
return false;
}
jsondata = eval('(' + data + ')');
if (jsondata.state == "success")
{
alert("已经退出");
var textList = '<a href="/Login/index.shtml" rel="external nofollow" rel="external nofollow" >【登录】</a><a href="/Register/index.shtml" rel="external nofollow" rel="external nofollow" >【注册】</a>';
$("#state_content").html(textList); //内容
}
},
beforeSend: function ()
{
}
};
jQuery.ajax(Option);
return false;
}
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《jQuery操作json数据技巧汇总》、《jQuery form操作技巧汇总》、《jQuery常用插件及用法总结》、《jQuery扩展技巧总结》、《jQuery表格(table)操作技巧汇总》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
# jQuery
# ajax
# 页面加载
# 检查
# 用户
# 登录状态
# jQuery ajax全局函数处理session过期后的ajax跳转问题
# jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
# jQuery Ajax页面局部加载方法汇总
# jQuery结合AJAX之在页面滚动时从服务器加载数据
# 基于jquery的finkyUI插件与Ajax实现页面数据加载功能
# jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法
# 设置为
# 均为
# 后端
# 才可以
# 加载
# 将此
# 锁住
# 都是
# 操作技巧
# 是在
# 还没有
# 相关内容
# 见过
# 感兴趣
# 采用了
# 给大家
# 要知道
# 时就
# 这么做
# 欢迎你
相关文章:
青岛网站设计制作公司,查询青岛招聘信息的网站有哪些?
如何用美橙互联一键搭建多站合一网站?
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
购物网站制作公司有哪些,哪个购物网站比较好?
如何批量查询域名的建站时间记录?
如何选择建站程序?包含哪些必备功能与类型?
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
建站之星免费模板:自助建站系统与智能响应式一键生成
如何在局域网内绑定自建网站域名?
招商网站制作流程,网站招商广告语?
建站主机如何选?性能与价格怎样平衡?
潮流网站制作头像软件下载,适合母子的网名有哪些?
孙琪峥织梦建站教程如何优化数据库安全?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
模具网站制作流程,如何找模具客户?
建站之星安装需要哪些步骤及注意事项?
5种Android数据存储方式汇总
北京企业网站设计制作公司,北京铁路集团官方网站?
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
如何用腾讯建站主机快速创建免费网站?
大连 网站制作,大连天途有线官网?
如何做网站制作流程,*游戏网站怎么搭建?
存储型VPS适合搭建中小型网站吗?
临沂网站制作公司有哪些,临沂第四中学官网?
开源网站制作软件,开源网站什么意思?
如何用y主机助手快速搭建网站?
学校建站服务器如何选型才能满足性能需求?
已有域名和空间,如何快速搭建网站?
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
Android滚轮选择时间控件使用详解
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
建站之星官网登录失败?如何快速解决?
建站之星云端配置指南:模板选择与SEO优化一键生成
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
如何获取PHP WAP自助建站系统源码?
建站主机核心功能解析:服务器选择与网站搭建流程指南
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
沈阳制作网站公司排名,沈阳装饰协会官方网站?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
美食网站链接制作教程视频,哪个教做美食的网站比较专业点?
制作网站的模板软件,网站怎么建设?
南京网站制作费用,南京远驱官方网站?
Python如何创建带属性的XML节点
建站之星如何取消后台验证码生成?
如何规划企业建站流程的关键步骤?
官网自助建站平台指南:在线制作、快速建站与模板选择全解析
如何在景安云服务器上绑定域名并配置虚拟主机?
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
网站企业制作流程,用什么语言做企业网站比较好?
如何快速查询网址的建站时间与历史轨迹?
*请认真填写需求信息,我们会在24小时内与您取得联系。