问题描述
我在 Struts2 中有一个 HashMap<String,String>
:
@In(scope=ScopeType.CONVERSATION)
@Out(scope=ScopeType.CONVERSATION)
private Map<String,String> paramMap;
和一个 String[]
:
@In(scope=ScopeType.CONVERSATION)
@Out(scope=ScopeType.CONVERSATION)
private String[] paramsText;
paramsText
用来存放value
的{{1}},在我的jsp中,我用paramMap
来显示<s: iterator>
和{{1 }}:
paramMap
当复选框被选中时,文本字段如何显示存储在 paramsText
中的值?我在考虑 <s:iterator value="paramMap" var="param" status="paramsstatus">
<tr>
<td>
<input type="checkBox" key_id="<s:property value="#paramsstatus.index"/>" name="params" value="<s:property value="#param.key"/>"
<s:iterator value="params" var="app">
<s:if test="#app==#param.key">
checked
</s:if>
</s:iterator>/>
 <s:property value="#param.value"/>
</td>
<td>
<input type="text" text_id="<s:property value="#paramsstatus.index"/>" name="paramsText" />
</td>
</tr>
属性,我应该如何指定它?
解决方法
您在迭代时可以获得的 paramsText
中的值。您需要使用 <s:set>
tag 将值存储在值堆栈中。
<s:iterator value="params" var="app">
<s:if test="#app==#param.key">
checked
<s:set var="paramsText" value="#param.value"/>
</s:if>
</s:iterator>/>
<input type="text" text_id="<s:property value="#paramsStatus.index"/>" name="paramsText" value="<s:property value="#paramsText"/>">