我有一个JSP文件
<%@ taglib prefix="s" uri="/struts-tags"%>
<% response.setContentType("application/javascript"); %>
var collegename = '<s:text name="student.collegename"/>';
在messages.properties文件中定义的student.collegename。
现在我可以在Java脚本文件中使用collegename变量。
通过使用那些我可以将java值传递给java脚本变量的标记,Struts2中是否有任何标记?
例如:
var jsvariable = 'string value of a java method';
我已经用过了,但是没有用:
Servlet代码:
HttpServletRequest request = ServletActionContext.getRequest();
request.setAttribute("collegename", collegename);
JSP代码:
var collegename= '<%=request.getAttribute("collegename")%>';
Java脚本代码:
alert("collegename"+collegename)
它显示在IE:
'collegename' is undefined
请建议
我也尝试过这个:
动作类:
import javax.servlet.http.HttpServletRequest;HttpServletRequest request; HttpServletRequest request = ServletActionContext.getRequest(); request.setAttribute("collegename", collegename); System.out.println("now getting attribute-----"); String attr=(String) request.getAttribute("cname"); System.out.println("attr is:::"+attr);
大学名称属性的获取者/设置者。
JSP代码:
<%@ taglib prefix="s" uri="/struts-tags"%><% response.setContentType("application/javascript"); %> var collegename= '<%=request.getAttribute("collegename")%>';
Java脚本代码:
alert("collegename"+collegename)
它显示在IE上:“学院名称”未定义
尽管它在控制台上显示正在获取属性(学院名称),但在Java脚本警报中却未显示。
它显示在IE上:“学院名称”未定义
请查阅。
最佳答案
您可以使用一些类似的代码。
var jsvariable = '<%=request.getAttribute("testattribute")%>';
希望能帮助到你