通过html页面的“登录”按钮,输入账号密码(数据库里有),登录成功@Action("ajaxLogin")
public String ajaxLogin() {
user = userService.chick(user);
if(null!=user){
session.put(TbConstants.USER, user);
Struts2Utils.renderJson("登陆成功!");
}else{
Struts2Utils.renderJson("登陆失败!");
}
return null;
}
TbConstants.USER 这个不用管,就当做Key就好,Value就是后面的user对象了
整个登录判断是通过ajax来的,现在的问题是 if(null!=user){
session.put(TbConstants.USER, user);
Struts2Utils.renderJson("登陆成功!");
}else{
Struts2Utils.renderJson("登陆失败!");
}
怎么在html页面上显示user.userName也就是用户名了
求高手瞧瞧,在线等待中...... 100分
public String ajaxLogin() {
user = userService.chick(user);
if(null!=user){
session.put(TbConstants.USER, user);
Struts2Utils.renderJson("登陆成功!");
}else{
Struts2Utils.renderJson("登陆失败!");
}
return null;
}
TbConstants.USER 这个不用管,就当做Key就好,Value就是后面的user对象了
整个登录判断是通过ajax来的,现在的问题是 if(null!=user){
session.put(TbConstants.USER, user);
Struts2Utils.renderJson("登陆成功!");
}else{
Struts2Utils.renderJson("登陆失败!");
}
怎么在html页面上显示user.userName也就是用户名了
求高手瞧瞧,在线等待中...... 100分
解决方案 »
- struts1使用<html:form>的问题
- 求助,java调用网页中的javascript问题
- 求救关于AJAX中的中文编码问题
- 文件上传异常,请帮忙看看,谢谢
- jsp web编程时遇到<A href='a.xml'>下载xml</a>时,直接在ie中打开了,请问如何能点击后下载而不是打开,谢谢!
- 这个问题有意思,,请大家看看,,有办法解决的也帮帮忙
- 在一个机器上安装weblogic 并在他下发布两个软件 互相调用发生了session 问题 (请进)
- JSP 调用JavaBean的成员函数出错!!
- 请教一个由于reload()引起的问题,比较急!!!(struts)
- 利用jsp+servlet实现分页,出现问题。请指教
- select下拉框自动显示选项
- fatal error; call to a member function query() on a non-object错误求回答啊 php+sqlite
$(sessionScope.TbConstants.USER.userName) 如果是静态html的话
你需要通过ajax获取用户名后再进行显示
你在页面上怎么显示?
按下面的试试session.put("TbConstants.USER", user);
页面上
<%=out.print(request.getParameter("TbConstants.USER"))%>;
看能否有结果
<%
User user =(User)request.getSession().getAttribute("TbConstants.USER")
user.userName
%>
这样可以得到userName在页面上
页面上
${sessionScope.USER.usrName }
没怎么看懂,放在session作用域的用request获取提交参数?页面上应该是 $(sessionScope.TbConstants.USER.userName) 或<%=out.print(((User)session.getAttribute("TbConstants.USER")).getUserName())%>
或 <%
((UserBean) session.getAttribute(TbConstants.USER) ).getUserName())
%>
当年,武松斗杀西门庆后,潘金莲知道大祸临头,慌忙跑出来逃命,她想啊,这事全是西门庆给惹的,西门不吉利,往东门逃。最后发现没路了只得漂洋过海,在一个小岛上存身。肚子里的孩子出世了,几年过后,孩子长得又矬又矮,她知道这是武大郎的,可给孩子起个啥名儿呢?叫太郎吧。你不信?日本人有叫太郎、一郎的,从来没有叫大郎的,就因为武大郎是他们的祖宗。日本人的身材就是武大郎的遗传基因造成的。母子二人在岛上生活。那浪蹄子忍不住寂寞,打起儿子的主意,终于,母子俩成了好事,附近鱼船上的人们纷纷指责,那浪蹄子大骂:“俺儿子日的是本人,自产自销,管你们啥事 ”,于是到后来,大家伙儿就叫他们“日本人”了。孩子越养越多,太郎想,我何不成立一个国家,过一把当皇上的瘾。国家要有国旗,潘金莲一听,说道:“你爹是卖炊饼的, 就在被单上画个炊饼算了”,于是,国旗有了。为了老武家能交好运,又特地在旗子上写了四个大字:“武运长久”言犹不许,处处提防,删我原贴,阻我诗章,拒民忧国,致民崇洋,尔等如此,为虎作伥,百年之辱,犹忧心伤,毛谆邓嘱,何弃耳旁,污臣鼠辈,为乱朝纲,私囊腰包,鲜思守疆,哀我中华,魏征难举,痛我国防,再无陈汤,如今黄海,剑拔弩张,我朝无将,且退且让,日寇嚣张,占岛为王,本我故土,无权巡航,外蒙藏南,收复无望,南海西海,抗议协商,稀土矿藏,列强储藏,视我中华,尧舜禹汤,时至今日,日落夕阳,不孝子嗣,妄称富强,掩耳盗铃,一让再让,除了抗议,还是嘴仗,前已有虎,后聚群狼,再不清醒,国必危亡,侵我主权,撞我鱼船,捕我同胞,逼我亮剑,外交无果,情何以堪,鬼子横行,国无尊严,中华儿女,网吐真言,为国捐躯,死而无憾,亿万国民,跪请开战!日本警察惊问:贵国的军队呢?答:在维稳,又问:武警呢?答:忙周克华的事,那警察呢?在强拆,不是还有城管吗?在抓小贩,那贵国政府呢?在关心刘翔的脚伤。只剩下我们老百姓了。日本警察大怒:你们也太瞧不起我们日本军队了,全抓了。
function showUserLogin() {
this.close();
art
.dialog( {
id : 'lgoinForm',
follow : document.getElementById('lgoin'),
width : 200,
title : '用户登录',
content : '<form action="" method="post">'
+ '<table width="350" border="0">'
+ ' <tr>'
+ ' <td width="70" align="right">用户名:</td>'
+ ' <td width="280"><input type="text" id="login_userCode" /><span class="STYLE4" id="login_userCode_message" style="color: red"></span></td>'
+ ' </tr>'
+ ' <tr>'
+ ' <td align="right">密码:</td>'
+ ' <td><input type="text" id="login_userpass" /><span class="STYLE4" id="login_userpass_message" style="color: red"></span></td>'
+ ' </tr>'
+ ' <tr>'
+ ' <td colspan="2" align="center"><input type="button" onclick="loginUser();" value="登陆" />'
+ ' <input type="reset" name="button" value="注册" onclick="showRegUser();" /></td>'
+ ' </tr>' + '</table>' + '</form>'
});
}loginUser(),输入账号密码,点击登录按钮的事件,调用ajax
// ajax用户登陆
function loginUser() {
var login_userCode = document.getElementById("login_userCode").value;
if (login_userCode == "" || login_userCode == null) {
document.getElementById('login_userCode_message').innerHTML = "您还没有输入用户名!";
return false;
} else {
document.getElementById('login_userCode_message').innerHTML = "";
} var login_userpass = document.getElementById("login_userpass").value;
if (login_userpass == "" || login_userpass == null) {
document.getElementById('login_userpass_message').innerHTML = "您还没有输入密码!";
return false;
} else {
document.getElementById('login_userpass_message').innerHTML = "";
} var urls = "ajaxLogin.do?user.userCode=" + login_userCode
+ "&user.userPassword=" + login_userpass;
xmlhttp = null;
if (window.XMLHttpRequest) {// code for Firefox, Opera, IE7, etc.
xmlhttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp != null) {
xmlhttp.onreadystatechange = loginUser_Change;
xmlhttp.open("post", urls, true);
xmlhttp.send(null);
}
}在通过url里面的ajaxLogin.do,到Action中去查var urls = "ajaxLogin.do?user.userCode=" + login_userCode
+ "&user.userPassword=" + login_userpass;@Action("ajaxLogin")
public String ajaxLogin() {
user = userService.chick(user);
if(null!=user){
session.put(TbConstants.USER, user);
Struts2Utils.renderJson("登陆成功!");
}else{
Struts2Utils.renderJson("登陆失败!");
}
return null;
}到这里了,
就是在htnl页面中去取session的值了(user.userName)
思路是这样:
1、通过异步Ajax调用服务端
2、服务端输出结果(用response输出就可以了,可以看出你是打算用JSON格式输出,将要返回给客户端的内容打包成JSON)
3、html页面获取服务端输出的结果,解析其内容输出到具体地方(也就是你要的user.userName)
http://blog.csdn.net/qianzhiyong111/article/details/6617967
TbConstants.USER = "xxx"jsp里
<%=((User)session.getAttribute("xxx")).getUserName()%>先试试看。
别忘了
<%@ page import="xxx.xxx.User"%>
User user =(User)request.getSession().getAttribute("TbConstants.USER")
user.userName
%>这个应该是可以的
算是酱子了,但是这个怎么打包成json到页面输出啊 @Action("ajaxLogin")
public String ajaxLogin() {
user = userService.chick(user);
if(null!=user){
session.put(TbConstants.USER, user);
Struts2Utils.renderJson("登陆成功!");
}else{
Struts2Utils.renderJson("登陆失败!");
}
return null;
}
这个方法别的地方还在用,就直接到jsp,在jsp上可以直接拿到里面的对象
这样问题就来了,怎么打包成json,又不影响别滴地方。
<%
User user =(User)request.getSession().getAttribute("TbConstants.USER")
user.userName
%>
这样可以得到userName在页面上
//3 处理返回信息函数
function loginUser_Change() {
//alert(xmlhttp.readyState);
if (xmlhttp.readyState == 4) { // 判断对象状态
if (xmlhttp.status == 200) { // 信息已经成功返回,开始处理信息
$("#userName").html(xmlhttp.responseText);
} else { //页面不正常
window.alert("您所请求的页面有异常。");
}
}
}
@Action("ajaxLogin")
public void ajaxLogin() {
user = userService.chick(user);
if(null!=user){
session.put(TbConstants.USER, user);
//返回登录成功的json串
Struts2Utils.renderJson("{result:'succes',userName:'"+user.getUserName()+"'}");
}else{
Struts2Utils.renderJson("{result:'fail'}");
}
}页面上的xmlhttp.onreadystatechange = loginUser_Change;中的loginUser_Change不知道你怎么定义的,可以改成这样xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
var respStr = xmlhttp.responseText;
var oRet = eval('('+respStr+')');
if(oRet.result == 'succes'){
alert("登录成功!"); //这里获得了登录成功后的用户名
//假设你的页面是上有个<span id="user_name"></span>
document.getElementById("user_name").innerTEXT = oRet.userName;
}else{
alert('登录失败!');
}
}
}