1
我希望使用JSF(Primefaces)的表單在保存時需要必需的字段(用戶名是本示例)。你也可以將書籍添加到每個用戶,一個用戶可以有0 ... n本書。如果你添加一本新書,它需要給它一個作者和一個名字。提交表單時未驗證必填字段的底數
我用下面的代碼試過了,已經嘗試了Primefaces的Partial Processing的很多方法。但是,它不能正常工作。有時我必須輸入所需的用戶名才能添加圖書或將其保存爲無法使用。有沒有辦法,只保存所需的用戶名並忽略所需的作者和書名?
這是該示例驗證碼:
<h:form>
<p:outputPanel id=„userdetails「>
<p:inputText id="name" value="#{bean.name}" />
</p:outputPanel>
<p:inputText id="txt_title" value="#{createBookBean.book.title}"
required="true" />
<p:inputText id="txt_author" required="true"
value="#{createBookBean.book.author}" />
<p:commandButton value="Reset" type="reset" />
<p:commandButton id="btn_add" value="Add"
update="books msgs @parent" action="#{createBookBean.reinit}">
<p:collector value="#{createBookBean.book}"
addTo="#{createBookBean.books}" />
</p:commandButton>
<p:outputPanel id="books">
<p:dataTable id="booksTable" value="#{createBookBean.books}"
var="book">
<h:outputText value="#{book.title}" />
<h:outputText value="#{book.author}" />
<p:column>
<p:commandLink value="Remove" update=":form:books"
process=":form:books">
<p:collector value="#{book}"
removeFrom="#{createBookBean.books}" />
</p:commandLink>
</p:column>
</p:dataTable>
</p:outputPanel>
<p:commandButton value="Save" update="msgs" process="@form"
action="#{bean.save()}"></p:commandButton> // button to save, and ignore required bookname
</h:form>
//按鈕保存和忽視需要BOOKNAME
嘗試commandButton的'immediate'屬性 –
請發佈有效的XML代碼。請不要使用MS Office Word等XML編輯器。您的XML代碼被捲曲的引號污染,這些引號不可能通過JSF/Facelets成功編譯和執行。也請將代碼縮減到最小代碼,以便通過copy'n'paste'n'running複製確切的問題。例如,那些輸出標籤和列標題當然不是必需的,以便重現問題。這樣可以縮短代碼,並且可以更快地找到專家的原因。嘗試擺脫代碼片段旁邊的滾動條。 – BalusC
我希望現在好轉。謝謝 –