我有一个使用 struts:iterator 标签显示的表格。表值包含在ArrayList
. 我在列表的每一行上都有一个编辑按钮。当用户单击编辑按钮时,该行的内容应发送到操作和相应的结果页面。我不允许使用复选框和单选按钮。
是否有一些param
标签我可以使用将该行设置为参数并将其取回结果页面。或者有没有办法在会话中设置该行并从会话中取回?我如何在 Struts2 中实现这一点?
我有一个使用 struts:iterator 标签显示的表格。表值包含在ArrayList
. 我在列表的每一行上都有一个编辑按钮。当用户单击编辑按钮时,该行的内容应发送到操作和相应的结果页面。我不允许使用复选框和单选按钮。
是否有一些param
标签我可以使用将该行设置为参数并将其取回结果页面。或者有没有办法在会话中设置该行并从会话中取回?我如何在 Struts2 中实现这一点?
您不应该将整行设置为参数,您只需设置id
行的参数即可。然后,您可以在需要保存时再次检索该记录。要设置参数,您可以使用这样的链接
<s:a action="edit" value="Edit"><s:param name="id" value="%{#row[ID]}"/></s:a>
使用以下代码,您可以将每行的值设置为 bean,例如,当您单击删除链接时,我们可以使用<s:bean/>
实例化 bean 类的对象,<s:param/>
并可用于将值设置为 bean
<s:iterator value="contactList" var="contactBean">
<s:url id="deleteUrl" action="deleteLink">
<s:bean name="net.viralpatel.contact.model.Contact"></s:bean>
<s:param name="id" value="#contactBean.id"></s:param>
<s:param name="firstName" value="#contactBean.firstName"></s:param>
</s:url>
<s:a href="%{deleteUrl}">
Delete
</s:a>
</s:iterator>
您可以使用锚标记在此行上尝试一些东西
<s:iterator value="list">
<s:url action="companyedit" var="listUrl" >
<s:param name="id"><s:property value="id" /></s:param>
<s:param name="operation">Edit</s:param>
</s:url>
<s:a href="%{listUrl}"><s:property value="companyName"/></s:a>
<s:property value="companyType" />
.
.
.
</s:iterator>
希望这可以帮助