ajax調用期間h:selectOneMenu的空/空值未設置爲後臺bean中的屬性,而如果I選擇任何具有非空/非空值的下拉列表項,它將在ajax調用期間設置爲支持bean中的屬性。 我注意到這種行爲,只有當我使用h:selectOneMenu & f:ajax在ui:repeat標籤中。而且,如果沒有ui:repeat標記,那麼在ajax調用期間,值(空和非空)都會正確設置爲支持bean中的屬性。在ajax調用期間,<ui:repeat>內的<h:selectOneMenu>空值未設置爲後臺bean
下面是上述情況的一小段代碼片段:
<h:panelGrid id="details">
<ui:repeat id="listId" value="#{new.List}" var="item" varStatus="itemStatus">
<h:panelGrid id="idDoc">
<ui:repeat id="docListId" value="#{item.docs}" var="docItem" varStatus="docStatus">
<h:selectOneMenu id="type" value="#{docItem.docType}" label="Type" style="" styleClass='' >
<f:selectItems value="#{new.docSelections}"/>
<f:ajax onevent="refreshDoc" event="valueChange" render="@this :form:listId:docListId:idDoc" execute=":form:listId:details" listener="#{new.save}"/>
</h:selectOneMenu>
</ui:repeat>
</h:panelGrid>
</ui:repeat>
</h:panelGrid>
是否有在我使用的UI過程中的任何問題:重複,H:selectOneMenu用於和f:AJAX?
它使用render =「@form」execute =「@form」? – Daniel
Tx爲答覆。 Nope.I已經嘗試過,但仍然沒有將空值設置爲backing bean。 – Nila
b.t.w刪除'event =「valueChange」'(並再次檢查...) – Daniel