在html页面中取得session中的值
2018-02-09 12:27
204 查看
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.实体:UserInfopublic 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 sessionStorge 来保存局部页面在刷新后回显,保留
- jsp页面上取得的验证码的值与session中存入的值不同步的问题
- JS取得HTML页面的DOCTYPE
- 通过([AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.Read)] )在前台html页面调用cs方法
- JS取得HTML页面的DOCTYPE
- html处理iframe中子页面与父页面里面对象的取得
- 用win32创建了一个HTML页面,想取得网页上的链接文字?怎么做?
- 为静态页面HTML增加session功能
- [HTML][Javascrpt]如何取得当前页面网址(URL)和查询参数
- ASP.NET菜鸟进阶-页面间参数传递问题集合 QueryString Session Cookies Application
- 两个 html 页面之间传数据
- 关于html页面中Input(文本框)控件OnChange事件的触发条件
- nginx 访问默认index.html首页跳转指定页面
- 从HTML原型到jsp页面完美转型攻略(教你即使不会写代码也能弄出漂亮的网页)
- 转载--Javascript访问html页面的控件的方法详细分析
- SVG 图形嵌入html页面
- Flex从页面url获取参数 flex与html交互1
- JS传值到HTML页面乱码解决办法
- 解决html向aspx页面传值汉字乱码问题
- 将Asp.net页面输出为HTML