关于js在jsp页面中获取session的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于js在jsp页面中获取session的问题相关的知识,希望对你有一定的参考价值。

js最好写在另外一个xxx.js文件里面,我想通过js获取session,比如做一个登录模块,根据session是否存在,判断是否登录!请大虾帮助下

很不幸的告诉你,js不能操作session,但是你可以现在jsp中把session中的值提取出来,
<%String str = session.getParameter("xxxx")%>
然后再js中用var a=<%=str%>获取,再 判段
参考技术A 当然是提交第一个页面的时候再次加载该页面并传值到另一个页面。举个简单的例子:你要登录一个论坛,首先下载了一个登录的jsp页面,你还没有输入任何信息,这个时候jsp的登录页面早就下载了,但在你提交个人信息之前服务器怎么可能就把你的session分配好了呢?必须等你提交的时候把你所填写的信息发送(就是你所说的传值时才加载). 另外,所有动态页面都是在服务器端运行程序的,java程序不会在你的浏览器中运行的,你所得到的只是在服务器端动态执行后的返回结果而已。 参考技术B js是不可能读到session的,因为session是存储在服务器端的,而js是客服端脚本追问

这是指的JSP页面

追答

这管是什么页面session值都是存储在服务器端的,除非你像下面的这位这样在读页面的时候动态将
session值写入js代码中,否则肯定是读不到的

参考技术C <script language='javascript'>
function test()

var result = "<%=session.getAttribute("username")%>";
if(result!="")
alert("已经登录!");
else
alert("对不起!您尚未登录!");


</script>追问

大虾,提示这句有错误,帮忙看下:var result = "";

追答

我测试过了,完全没有问题。
我的页面cs.jsp代码如下:

function test()

var result = "";
if(result!="")
alert("已经登录!" + result);
else
alert("对不起!您尚未登录!");


test();

本回答被提问者和网友采纳

以上是关于关于js在jsp页面中获取session的问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在js页面获取session

在jsp中使用js怎样才能获取session的值

JS或jsp获取Session中保存的值

js里怎么取session的值

JSP如何取出session里的值?

待解决关于在web中操作session的若干问题