Struts2 - 选择不在迭代器中工作
问题描述:
我在迭代器中遇到select问题。每当我在select的名称属性中使用我的迭代器status
的index
值时,表单未正确提交。Struts2 - 选择不在迭代器中工作
在我的代码中,我使用first iterator
来遍历一个日期列表和一个second iterator
来迭代我的记录以显示和编辑它们的数据。
page.jsp
<s:iterator value="daysOfWeek" var="jour" status="stat">
<div class="gu desk-s1 desk-w2" id="plage${stat.index}">
<s:text name="%{#jour}"/>
<s:submit type="button" action="addPlage/%{#stat.index}">+</s:submit>
<s:iterator value="plageRecords" var="plage" status="innserStat">
<s:if test="%{#plage.jour == #stat.index}">
<s:include value="plage/plage_cell.jsp"/>
</s:if>
</s:iterator>
</div>
</s:iterator>
page_cell.jsp
<div class="g rev-width rev-top-m1">
<div class="gu desk-w6">
<label><s:text name="admin.plage.label.endHour" /></label>
<s:fielderror class="fieldError"
fieldName="plageRecords[%{#innserStat.index}].heureFin"/>
</div>
<div class="gu desk-w10">
<s:select name="plageRecords[%{#innserStat.index}].heureFin"
cssClass="rev-side-m1 rev-width" list="endHourList"/>
</div>
</div>
答
你必须在if标签错误表达:
<s:if test="%{#plage.jour == #stat.index}">
它应该是
<s:if test="%{#plage.jour == #jour}">
如果表达不评估或评价为false
然后选择标签将永远不会被添加到形式,且FORMDATA将永远不会被提交。 “
+0
你应该接受这个答案。 –
”表单未正确提交。“ - 更具体的信息? – Thomas
是的,当然,即使未完成验证,操作也永远不会到达并返回'input'。 –
您是否检查过帖子主体的样子?最好发布[mcve]。 – Thomas