[英]How to send data from JSP to Action with <s:a> in Struts2?
我希望實現單擊標題,匹配的id被發送到Action,但Action中的id始終為零。
Action使用id搜索數據庫中的匹配記錄並顯示在另一個jsp中。
<s:iterator id="n" value="news">
<tr>
<td>
<s:url action="GETNEWS" var="getNews">
<s:a href="%{getNews}">
<s:property value="#n.title" />
<s:hidden name="id" value="#n.id" />
</s:a>
</s:url>
</td>
</tr>
</s:iterator>
不推薦使用<s:iterator>
id
(除非您使用的是舊版本)。 改用var
。
在<s:url>
使用<s:param>
(為了更好的編碼,請記住指定命名空間)。
然后從<s:a>
引用<s:url>
<s:a>
。
最后,確保您的行動中有正確的Setter。
<s:iterator var="n" value="news">
<tr>
<td>
<s:url action="GETNEWS" namespace="/" var="getNews">
<s:param name="id">
<s:property value="#n.id" />
</s:param>
</s:url>
<s:a href="%{getNews}">
<s:property value="#n.title" />
</s:a>
</td>
</tr>
</s:iterator>
使用<s:param>
標簽向服務器發送值。所以你的代碼看起來像
<s:iterator id="n" value="news">
<tr>
<td>
<s:url action="GETNEWS" var="getNews">
<s:param name="id"><s:property value="#n.id"/></s:param>
<s:a href="%{getNews}">
<s:property value="#n.title"/>
</s:a>
</s:url>
</td>
</tr>
</s:iterator>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.