JS或jsp获取Session中保存的值

JS是不能读取Session中的值的 。

session是服务器对象,

javascript是客户端脚本,你能做的操作就是把这个值用

<%=%>输出到页面的javascript中参与运算,而无法直接用js调用的

 方法:

你可以做一个AJAX来请求 服务器, 返回session中的值 。

当然你也可以在JSP中使用<%=%>这种东西来获取session中的值,例如:

 <script language="JavaScript"> 
     var myName="<%=session.getAttribute("userName")%>"; 
     alert(myName); 
 </script>

jsp获取session的value,将如下代码添加到你想添加的位置即可:

<%=session.getAttribute("userName")%>

 

转载于:https://www.cnblogs.com/xh_Blog/p/8341434.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个问题可能是由于JSP页面使用了异步加载(Ajax)导致的。异步加载会导致新的HTTP请求,而这个请求并没有携带原先的session信息。因此,可以考虑在异步请求手动添加session信息,或者在JSP页面session信息保存JavaScript变量,在异步请求使用该变量传递session信息。 下面是一些可能的解决方案: 1. 在异步请求手动添加session信息 在异步请求添加如下代码: ```java HttpSession session = request.getSession(); ``` 这将获取当前session对象。然后,可以将session信息添加到异步请求: ```javascript $.ajax({ url: "someurl", data: {sessionid: '<%= session.getId() %>'}, success: function(data) { // handle response } }); ``` 这里将session ID添加到请求参数。 在服务器端,可以通过session ID获取session对象: ```java String sessionId = request.getParameter("sessionid"); HttpSession session = request.getSession(false); if (session != null && session.getId().equals(sessionId)) { // session found } else { // session not found } ``` 2. 将session信息保存JavaScript变量JSP页面添加如下代码: ```java <% HttpSession session = request.getSession(); String username = (String) session.getAttribute("username"); %> <script> var username = '<%= username %>'; </script> ``` 这里将session的username属性保存JavaScript变量。 在异步请求,可以使用该变量传递session信息: ```javascript $.ajax({ url: "someurl", data: {username: username}, success: function(data) { // handle response } }); ``` 在服务器端,可以直接获取到该变量: ```java String username = request.getParameter("username"); ``` 这里假设在异步请求传递了username参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值