重複我有一個密切相關的兩個問題:JSF不能在UI更新單一的形式:從外部
- 我需要更新內部UI標籤內的一種形式:在主頁從對話框重複和不知道如何(因爲在UI中有很多標籤:重複,我只需要更新一個)
- 命名容器被搞砸了,當我在該表單中使用id時失去了它們的「索引」(如果試圖確定更新路徑表達式...)
原因我需要這個:更新'w holelist'(現狀)在<p:dialog>
內部以某種方式打破了所有<p:calendar>
(沒有錯誤...)(日曆覆蓋顯示在第一次,但是在更新列表之後它不再出現(必須再次重新加載頁面)。此外,我不希望每次更新100元,如果只有一個可以改變
page.xhtml
<h:panelGroup id="wholelist">
<ui:repeat var="entry" value="#{bean.foundEntries}" id="repeatId">
<customTag:someTag entry="#{entry}" />
</ui:repeat>
</h:panelGroup>
...
<p:dialog widgetVar="dialog" id="dialog">
<p:calendar value="#{bean.date}" ... /> <!-- overlay pops up on select until the whole list is refreshed. after that it does not appear until page reload -->
<p:commandButton actionlistener="#{bean.saveSomething()}" update="#{bean.componentToUpdate WHICH DOES NOT WORK...}"/>
</p:dialog>
someTag.xhtml
和內<customTag:someTag>
(這是因爲多次重複使用的標籤):
...
<h:form>
... display a lot of data which can be changed by the dialog...
<p:commandButton value="show edit dialog" onComplete="PF('dialog').show()" update=":dialog">
<f:setPropertyActionListener value="??? (@form does not work)" target="#{bean.componentToUpdate}" />
</p:commandButton>
</h:form>
第一個問題:
我需要從對話框刷新一個單一的形式(=這需要知道形成我要刷新的對話,我不知道怎麼做......)
我怎樣才能得到更新邏輯的工作(傳遞組件更新到bean,使對話知道要更新或等於什麼)?
第二個問題:
爲什麼JSF生成根本沒有定義ID =的情況下 「......」 到UI內的命名容器:重複類似
- repeatId:0 :j_id_c0_6
- repeatId:1:j_id_c0_6
- repeatId:2:j_id_c0_6
當我定義了一個ID形式(<h:form id="formname">
)類似
- repeatId:表格名稱
- repeatId:表格名稱
- repeatId:表格名稱
導致duplicateId(因爲缺乏名稱中的「迭代器號碼」)?
這是否有意義?
JSF實現和版本信息? p:對話框是否相關?或者所有關於此事的PrimeFaces組件 – Kukeltje
MyFaces,JSF 2.0。我認爲p:對話框是不相關的 - 它應該強調錶單必須可以從根xhtml頁面訪問/更新,而不是從自定義標籤或其他任何內容中訪問/更新。 Primefaces是相關的,因爲p:日曆在刷新後中斷,這是我打開問題的原因。 – Niko
號碼:日曆停止工作,如果你更新「:wholelist」上保存並再次嘗試(第二個對話框中有一個非工作電話號碼:日曆) – Niko