簡體   English   中英

使用Struts 2標簽將Java方法的值傳遞給javascript變量

[英]Passing value of a java method to a javascript variable using Struts 2 tag

我有一個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);
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); 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")%>'; <%@ taglib prefix="s" uri="/struts-tags"%> <% response.setContentType("application/javascript"); %> var collegename= '<%=request.getAttribute("collegename")%>';

Java腳本代碼:在IE上顯示的alert("collegename"+collegename) :'collegename'未定義

盡管它在控制台上顯示正在獲取屬性(學院名稱),但在Java腳本警報中卻未顯示。
它顯示在IE上:“學院名”未定義

請查閱。

您可以使用一些類似的代碼。

var jsvariable = '<%=request.getAttribute("testattribute")%>';

希望能幫助到你

這將在您的操作類上調用getSomeValue()方法。

var collegename = '<s:property value="someValue" escapeJavaScript="true"/>';

如何使用$ {userName}或OGNL%{userName}之類的EL ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM