A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 徐传任 中级黑马   /  2012-9-28 21:11  /  1545 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在Javascript函数中可以取Session值吗?

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

1 个回复

倒序浏览
可以。
在JavaScript中取session值
  1. function checkUser(){


  2. var id = <%=session.getAttribute("user_id")%>;

  3. if(id == "" || id == null){

  4. //session为空时的操作


  5. }else{


  6. //session不空时的操作

  7. }
  8. }
复制代码
*以上的程序,在session为空时时没错的(var id = null;null是关键字),可是想想当session有值呢,比如“aaa”,则得到var id = aaa的语句,这样的语句显然是不对的……js出错!

所以应当做修改如下:
  1. var id = "<%=session.getAttribute("user_id")%>";(加了引号)

  2. if(id == "" || id == null || id == "null"){


  3. }

复制代码
个人分析:

          1、<%=session.getAttribute("user_id")%>中的语句其实并不是JavaScript中的语句,是jsp中的scriplet,也就是说,<%=session.getAttribute("user_id")%>的结果其实在服务器在向客户端发送html时已经确定了,并不是在调用JavaScript方法时才赋的值。
         在没有用上面的方法之前,还稀奇的想到过,先将session的值存放在一个hidden域中,然后可以用getElementById取得hidden域的值,即是session的值。

评分

参与人数 1技术分 +2 收起 理由
宋天琪 + 2

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马