ASP.NET中怎样使用JS代码修改session的值?或怎样设置?
系统中有普通用户登录和管理员登录,当普通用户登录后,用户名保存session中,当点击管理员登录时弹出“是否退出现登录的用户?”点“是”时,怎样将session中的值设置...
系统中有普通用户登录和管理员登录,当普通用户登录后,用户名保存session中,当点击管理员登录时弹出“是否退出现登录的用户?”点“是”时,怎样将session中的值设置为空?
展开
4个回答
展开全部
楼上的方法顾然可以,但是我觉得,有种方法很简单,也就是每次退出系统的时候,都跳转到一个页面(logout.aspx) 这个页面专做一下清空用户数据的值,清空完成之后,直接跳转到登录页面,所有的页面都跳转logout.aspx 用户退出就变得简单了
追问
你的意思是只要我点击登录页面的时候,这时session的值就是空了,如果我在管理员登陆界面中点击取消返回跳转的原页面呢?结果不也是情况了session了吗?
追答
你没有搞懂session的状态,普通登录和管理员登录的session是不一样的,所以不用担心这个问题,还有就是 logout.aspx 是页面是清空session的值,没有完全必要在登录页面清空session
展开全部
我理解楼主的意思了,其实其实可以换个思维去解决这个问题,
普通用session[“User”]=“user”而如果是管理员的话Session["user"]="admin"
判断的时候先判断是否为空,然后再条件判断是否为管理员
session清空就更简单了,用jquery实现大约写一下
前台 $.post("aa.ashx",{status:”exitUser“},function(){})
后台 string status=context.request["status"];if(status="exitUser"){Session.Abandon();}
以上为用AJAX 实现局部刷新,代码手写可能有错误,理解意思最重要
当然不用ajax,也是可以清空session的,理解思想就行了
思想就是,js传递一个参数给服务器,服务器根据这个参数状态决定所做的事(比如清空session)
无论 net还是java都是一种语言,他们实现html的思想是差不多的
普通用session[“User”]=“user”而如果是管理员的话Session["user"]="admin"
判断的时候先判断是否为空,然后再条件判断是否为管理员
session清空就更简单了,用jquery实现大约写一下
前台 $.post("aa.ashx",{status:”exitUser“},function(){})
后台 string status=context.request["status"];if(status="exitUser"){Session.Abandon();}
以上为用AJAX 实现局部刷新,代码手写可能有错误,理解意思最重要
当然不用ajax,也是可以清空session的,理解思想就行了
思想就是,js传递一个参数给服务器,服务器根据这个参数状态决定所做的事(比如清空session)
无论 net还是java都是一种语言,他们实现html的思想是差不多的
追问
兄弟,我没学习过Jquery,你有什么好的资料或者好的视频等学习文件吗?推荐一下啊!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
JS是脚本语言,也是运行在客户端的语言,而session是属于服务器端,因此JS是无法直接操作session的,要实现你的功能可以采用AJAX局部刷新,调用服务器端的java代码来达到清空session的目的。
不过你的这个功能也不用清空session的,因为每次登录都会执行向session里存入登录信息的代码,就相当于把以前的用户给覆盖了,你的管理员登录后就会自动把普通用户的信息给覆盖掉!
你试试吧,两种方法都可以的,别忘了采纳哟!
不过你的这个功能也不用清空session的,因为每次登录都会执行向session里存入登录信息的代码,就相当于把以前的用户给覆盖了,你的管理员登录后就会自动把普通用户的信息给覆盖掉!
你试试吧,两种方法都可以的,别忘了采纳哟!
追问
“采用AJAX局部刷新,调用服务器端的java代码来达到清空session的目的”是这样的实现?可以给点代码我参考下吗?谢谢
追答
用原生态的ajax代码感觉有点繁琐,而且不实用,我是做java开发的,我比较喜欢用DWR,ASP是肯定用不了DWR,但用Jquery也比较方便的,这是最基本的Ajax方法调用,如果你这都不会的话还是不要考虑用Ajax了,直接登录就成,因为session里的key是固定的,每次登录的时候新用户都会覆盖以前的用户的,不用注销后再登录。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
新建一个页面为“clearsession.aspx”在该页面后台的Page_Load中写以下代码:
Session["username"] = null;
Response.Write("<script>alert('您已安全退出系统!');location.href='index.aspx';</script>");
这样就好了
Session["username"] = null;
Response.Write("<script>alert('您已安全退出系统!');location.href='index.aspx';</script>");
这样就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询