JS不可以读取Session域内的值,
Session是会话周期域, 是服务端上同一个客户端一次会话请求的容器
JS是运行在浏览器上的, 无法直接访问session
如果你想服务端存的值客户端直接访问, 可以考虑用cookies存储
如果非要用session存储可以在页面上用隐藏的input控件存储该值, 然后用js读取
或用Ajax请求获取后台session中的值
SESSION是指保存在服务器的会话,而JS是运行在客户端的,如果你想取得SESSION里面的值,需要使用动态语言在页面上输出内容并赋给JS变量,或使用接口来获取。如:
//
var
session_value
=
'<%=sessiongetAttribute("SESSION_KEY")%>';
1、首先解释一下你的疑问,为何取不到最新的session值。\x0d\javascript是无法获取服务器session中的值的。js只是脚本语言,session是jsp里的对象。\x0d\使用el表达式获取值,是在编译jsp的时候完成的。编译完成后,就发送到浏览器了。浏览器执行的html页面中的值是固定的。\x0d\function readSession(){\x0d\ var data = "123"; //编译jsp的时候,el表达式获取值${sessionScopemacData}已经被替换成具体的值了\x0d\\x0d\}\x0d\所以,以后无论多少次获取data,都是123。你可以在浏览器中右键查看生成的html页面,就明白了。\x0d\2、如何解决这个问题。\x0d\\x0d\可以将macData的值,已json或xml或纯文本的方式发送给前台。使用ajax的方式获取。\x0d\这里假设你使用了json的方式, responsegetWriter()print("{ macData: 具体的值 } ");\x0d\\x0d\jquery代码:\x0d\function loadData(){\x0d\ $get("请求url",function(result){\x0d\ $("#content")html(resultmacData);\x0d\\x0d\ });\x0d\\x0d\}
你可以在服务器打开一个用户会话时为该用户建立session以用来保存一些用户的基本信息,或是其它的设置方面的信息,session用起来是非常方便的,但同时需要注意的是,每建立一个session变量,服务器是要为之分配相应的内存空间的,并且它的释放是有时间限制的!
以上就是关于我想问一下,用JS 怎么获取SESSION中的值全部的内容,包括:我想问一下,用JS 怎么获取SESSION中的值、js如何动态获取session值、jsp中如何获得更改后的session等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)