我使用了迭代器标签来显示jsp中的数据。
<s:iterator value="prodAL" status="id">
<tr>
<td><s:property value="PName"/></td>
<td><s:property value="model"/></td>
<td><s:property value="price"/></td>
<td><s:property value="quantity"/></td>
<td><s:property value="status"/></td>
</tr>
</s:iterator
我如何实现一个按钮(或其他可点击的界面元素),以便当单击它时,只有该特定行的内容应该传递到另一个可以编辑内容的jsp或 Action 类。
最佳答案
您必须始终传递操作以及从操作调度 JSP。切勿直接从一个 JSP 跳转到另一个 JSP。
也就是说,如果您想绘制产品列表,选择其中一个,然后登陆另一个页面并进行编辑,流程是:
- 操作一:加载并公开
List<Product>
通过 setter/getter ; - JSP One:迭代
<form>
内的产品列表以行动二为目标;使用<s:hidden />
,一个<s:checkbox/>
或与按钮结合使用的任何内容(如果您希望每一行有一个按钮,请使用隐藏属性,如果您希望整个页面中有一个编辑按钮,则使用复选框)来发送产品ID到行动二 - 操作二:通过 setter 接收 ProductID,使用它加载 Product,通过 getter 公开 Product,渲染 JSP Two
- JSP 二:通过
<s:textfield />
公开产品属性,使用<s:hidden />
对于产品 ID。
关于java - 将数据从 jsp 迭代器发送回 struts 操作类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34681817/