我有以下代码
<s:iterator value="assignedProductRoleBean.serviceProfiles" status="serStatus">
<tr>
<td width="150px">
<s:property value="serviceSpecCode" />
</td>
<s:hidden name="assignedProductRoleBean.serviceProfiles[{#serStatus.index}].serviceSpecCode" value="{serviceSpecCode}" />
<td width="150px">
<s:property value="code" />
</td>
<s:hidden name="assignedProductRoleBean.serviceProfiles[%{#serStatus.index}].code" value="%{code}" />
<td width="50px">
<s:checkbox name="assignedProductRoleBean.serviceProfiles[{#serStatus.index}].granted" value="granted" cssStyle="width:20px;border:0;background-color:transparent" />
</td>
<s:iterator value="assignedProductRoleBean.serviceProfiles[{#serStatus.index}].characteristics" status="serCharStatus">
test
<td width="150px">
<s:property value="key" />
</td>
<s:hidden name="assignedProductRoleBean.serviceProfiles[{#serStatus.index}].characteristics[%{#serCharStatus.index}].key" value="%{key}" />
<td width="150px">
<s:textfield theme="simple" name="assignedProductRoleBean.serviceProfiles[%{#serStatus.index}].characteristics[%{#serCharStatus.index}].value" value="%{value}" /></td>
</s:iterator>
</tr>
</s:iterator>
问题是,我正在获取'已授权'的真值的CHECKED视图。但是当我取消选中/检查视图页面时,它们没有更新到相应的bean。
第二个迭代器(内部)的另一个问题。我有角色,虽然他们没有在jsp页面中显示。然而,在提交页面后,他们将进入行动班。
ps我甚至尝试过value =%{granted}
答案 0 :(得分:3)
我遇到了同样的问题。我有这个工作:
<div>
<s:iterator value="podTypeContentList" status="stat" var="podTypeContent">
<s:if test = "#podTypeContent.selected == true">
a
</s:if>
<s:else>
b
</s:else>
<s:property value="%{podContent}" />
<s:property value="%{selected}" />
<s:checkbox name="%{id}" value="%{selected}" fieldValue="%{podContent}" />
<br />
</s:iterator>
<br class="clear" />
<s:submit align="center" value="Save" id="submitButton" cssClass="btn btn-primary" />
</div>
“selected”实际上是isSelected boolean bean属性。把我扔了几个小时。