js是没有办法获取SESSION的, 因为它只是客户端的脚本,SESSION是服务端的如果想要获取SESSION 而不刷新页面就需要AJAX, 用JS 使用AJAX 获取服务端的SESSION
setTimeout(“a”,1000)//等待1000毫秒执行function a 比如 function a() { setTimeout(“a”,1000)//没1秒执行一次a(),再次加入ajax请求session的方式就可以了 }
ajax请求回调后页面不会完全刷新
这个时候你直接取session中的刚放入的对象是取不到的
应该同时往session中和json中同时放,当前页面取json,进入其他页面时取session
你的意思是AJAX访问被上面拦截器拦截之后获取不到session吧?
把AJAX访问代码贴出来看看,除非是脚本代码写得不兼容,要不然怎么只有火狐下不能访问呢。你可以用firefox下的firebug,进行断点调试,很好用。
JS不可以读取Session域内的值, Session是会话周期域, 是服务端上同一个客户端一次会话请求的容器。JS是运行在浏览器上的, 无法直接访问session。
如果你想服务端存的值客户端直接访问, 可以考虑用cookies存储,如果非要用session存储可以在页面上用隐藏的input控件存储该值, 然后用js读取,或用Ajax请求获取后台session中的值。
怎样在html页面中取得session中的值
方法如下:
1首先呢session的key-value都是存在server的,浏览器HTML页面是没有办法直接取得session中的值,只有在html里能通过js拿到jesessionid之类的东西。
11、数据量如果小,可以考虑放到cookie里,传到客户端,html里用js就可以拿到。
12、如果数据量大,可以考虑单独做一个jsp或servlet,根据传来的session的key,返回序列化的session的值,比如json之类的。html里用js通过ajax获取。这种方式复杂了点,多一次远程访问,但是灵活方便。
如:<input type="text" value='<%#Session["username"]%>'>
2或者得通过后台才能获取,session是存在服务器端的,如果你用cookie的话,可以通过js获取。
比如:写个webservice ajax获取你要的session值 或者 利用利用模板语言输出。
3用responsesendRedirect("ahtmlparam=hello");用下面的JS方法
如:var v=getUrlParameter('param');
function getUrlParameter( name ){
name = namereplace(/[\[]/,"\\\[")replace(/[\]]/,"\\\]");
var regexS = "[\\&]"+name+"=([^])";
var regex = new RegExp( regexS );
var results = regexexec(windowparentlocationhref );
if( results == null ) return ""; else {
return results[1];
}
}
以上几种方法在html页面中取得session中的值
以上就是关于js怎样获取session值 在登录页面中全部的内容,包括:js怎样获取session值 在登录页面中、如何得到Session的剩余时间AJAX请求会更新Session么、在做ajax,获取不到session的属性,急急急!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)