• 注册
    • 查看作者
    • 在html页面中取得session中的值的方法

       

      这篇文章主要介绍了在html页面中取得session中的值的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

      1.首先呢session的key-value都是存在server的,浏览器HTML页面是没有办法直接取得session中的值,只有在html里能通过js拿到jesessionid之类的东西。

      1.1、数据量如果小,可以考虑放到cookie里,传到客户端,html里用js就可以拿到。

      1.2、如果数据量大,可以考虑单独做一个jsp或servlet,根据传来的session的key,返回序列化的session的值,比如json之类的。html里用js通过ajax获取。这种方式复杂了点,多一次远程访问,但是灵活方便。

      如:<input type=”text” value='<%#Session[“username”]%>’>

      2.或者得通过后台才能获取,session是存在服务器端的,如果你用cookie的话,可以通过js获取。

      问题描述:session中保存着UserInfo对象,成功登录后,在html中显示“欢迎xxx”

      解决方法:通过ajax,json获取UserInfo数据,再显示

      1.js

      <script type=”text/javascript” src=”js/jquery-1.8.3.js”></script>
       
      <script type=”text/javascript”>
          $(function() {
              $.ajax({
                  type : “get”,
                  url : “login!getLoginName.action”,
                  dataType : “text”,
                  success : function(result) {
                      document.getElementsByTagName(‘b’)[0].innerHTML=result;
                  },
                  error : function() {
                      alert(“請求失敗”);
                  }
              });
          });
      </script>

      2.页面

      <html>
      <head>
      <title>管理页面</title>
      </head>
      <body>
           <table>
                  <tr>
                              <td width=”74%” height=”38″ class=”admin_txt”>管理员:<b></b>您好,感谢登陆使用!</td>
       
                          </tr>
                      </table>
      </body>
      </html>

      3.实体:UserInfo

      public class UserInfo {
          private int UserInfoId;
          private String userInfoName;
          private String UserInfoPsw;
          //省略get,set

      4.LoginAction中:

      public void getLoginName() {
              System.out.println(“getLoginUser”);
              HttpServletResponse response = ServletActionContext.getResponse();
              response.setContentType(“text/plain;charset=UTF-8”);
              PrintWriter out;
              try {
                  String userName = ((UserInfo) ActionContext.getContext()
                          .getSession().get(“user”)).getUserInfoName();
                  System.out.println(userName);
                  out = response.getWriter();
                  out.print(userName);
                  out.flush();
                  out.close();
              } catch (IOException e) {
                  // TODO Auto-generated catch block
                  e.printStackTrace();
              }
       
          }

      3.用response.sendRedirect(“a.html?param=hello”);用下面的JS方法

      如:.

      var v=getUrlParameter(‘param’);
      function getUrlParameter( name ){
      name = name.replace(/[
      ]/,”\[“).replace(/[
      ]/,”]”);
      var regexS = “[\\?&]”+name+”=([^&#]*)”;
      var regex = new RegExp( regexS );
      var results = regex.exec(window.parent.location.href );
      if( results == null ) return “”; else {
      return results[1];

      }
      }

      以上几种方法在html页面中取得session中的值.

      总结

      到此这篇关于在html页面中取得session中的值的方法的文章就介绍到这了,更多相关html页面取得session值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!

      来源:脚本之家

      链接:https://www.jb51.net/html5/739948.html

      ,。,!

    • 0
    • 0
    • 0
    • 12
    • 请登录之后再进行评论

      登录
    • 单栏布局 侧栏位置: