struts2中,JS文件里怎么获得后台action中传过来的值

wb57205375 2010-12-27 02:33:00
action中有username

登录后用JS文件接收:

var name;

name = '${username}';

alert(name + "你好!");

JSP页面直接调用JS文件,然后页面直接弹出 '${username}'你好 的对话框。。。

在JSP页面用<s:property value="username" / > 是可以接收到username变量的。

要想在对话框里弹出“用户名你好”来,该怎么做啊?

貌似是我JS文件里没获取到username对象。
...全文
2671 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuyuhua0066 2010-12-27
  • 打赏
  • 举报
回复
这个貌似Ajax有这个功能吧
wb57205375 2010-12-27
  • 打赏
  • 举报
回复
5楼的朋友貌似不好用...
<%=request.getAttribute("USERNAME")%>你好!...
wb57205375 2010-12-27
  • 打赏
  • 举报
回复
第一个方法也行

JS中:
function login(name){
alert(name + "你好!");
}

JSP中:
<body onload="login('${username}')">
<script type="text/javascript" src="test.js" ></script>
登录成功! <br>
</body>

调用方法的时候onload = login('${username}') 括号中一定要加单引号,不知道怎么解释...

这些都是通过在页面定义变量或是将变量作为参数传入JS中的方法,想知道有没有直接在JS中调用action中变

量的方法?
luman2002 2010-12-27
  • 打赏
  • 举报
回复
在你的ACTION里面加
ActionContext.getContext().put("USERNAME", username);

然后再JS里面
var username ='<%=request.getAttribute("USERNAME")%>';
alert(username );
wb57205375 2010-12-27
  • 打赏
  • 举报
回复
错了 是你第二个方法
wb57205375 2010-12-27
  • 打赏
  • 举报
回复
1楼朋友的好像不行啊~还是会输出name=<% = username%>你好

用2楼朋友的第一个方法可行,不过隐藏表单的位置一定要在调用JS文件的上面:
<input type="hidden" id="username" value="${username}" />
<script type="text/javascript" src="test.js" ></script>

第二个方法应该也是可行的,我一会去试试~
莫寻千百度 2010-12-27
  • 打赏
  • 举报
回复
var name;

name = '${username}';

这句话只能放到页面上才会有效果,
方法1:你可以在JS里面 写个方法,传入一个参数,,然后在 页面上调用那个方法 把 ${username}传进去,,
方法2: 你可以在页面上写一个隐藏域 <input type=hidden id='username' value="${username}" /> 然后再JS获得ID为 username 的对象的值,
goodsun00 2010-12-27
  • 打赏
  • 举报
回复
你把用户名传到你的要显示页面上后, 在js里 name=<% = Action返回的参数%> 这样

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧