可以。
在JavaScript中取session值- function checkUser(){
- var id = <%=session.getAttribute("user_id")%>;
- if(id == "" || id == null){
- //session为空时的操作
- }else{
- //session不空时的操作
- }
- }
复制代码 *以上的程序,在session为空时时没错的(var id = null;null是关键字),可是想想当session有值呢,比如“aaa”,则得到var id = aaa的语句,这样的语句显然是不对的……js出错!
所以应当做修改如下:- var id = "<%=session.getAttribute("user_id")%>";(加了引号)
- if(id == "" || id == null || id == "null"){
- }
复制代码 个人分析:
1、<%=session.getAttribute("user_id")%>中的语句其实并不是JavaScript中的语句,是jsp中的scriplet,也就是说,<%=session.getAttribute("user_id")%>的结果其实在服务器在向客户端发送html时已经确定了,并不是在调用JavaScript方法时才赋的值。
在没有用上面的方法之前,还稀奇的想到过,先将session的值存放在一个hidden域中,然后可以用getElementById取得hidden域的值,即是session的值。 |