action中有username登录后用JS文件接收:var name;name = '${username}';alert(name + "你好!");JSP页面直接调用JS文件,然后页面直接弹出 '${username}'你好 的对话框在JSP页面用<s:property value="username" / > 是可以接收到username变量的。要想在对话框里弹出“用户名你好”来,该怎么做啊?貌似是我JS文件里没获取到username对象。
调试欢乐多
方法1:你可以在JS里面 写个方法,传入一个参数,,然后在 页面上调用那个方法 把 ${username}传进去,,
方法2: 你可以在页面上写一个隐藏域 <input type=hidden id='username' value="${username}" /> 然后再JS获得ID为 username 的对象的值,
<input type="hidden" id="username" value="${username}" />
<script type="text/javascript" src="test.js" ></script>第二个方法应该也是可行的,我一会去试试~
ActionContext.getContext().put("USERNAME", username);然后再JS里面
var username ='<%=request.getAttribute("USERNAME")%>';
alert(username );
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中变量的方法?
<%=request.getAttribute("USERNAME")%>你好!...