[英]How to submit JSF PrimeFaces form with selectBooleanCheckbox without refreshing the page?
我將JSF與PrimeFaces結合使用,以進行大學作業。 我正在努力工作。 我正在使用PrimeFaces,並且有一個Tabview,其中包含5個選項卡。 在這些標簽之一中,我有一個dataTable,其中有幾行和幾列。 一切正常,但問題是我想提交表單而不重新呈現(整個頁面)。 事實是,dataTable中的每一列都有一個selectBooleanCheckbox,並且當選中該復選框時,按鈕應該消失。 如果未選中,則應顯示按鈕。 可以在onchange =“ this.form.submit()”或onclick =“ this.form.submit()”上正常工作,但它會刷新整個應用程序,並導致第一個選項卡被選中,而不是我之前選擇的選項卡在。 因此,我正在尋找一種解決方案,以能夠提交和重新呈現某些內容而無需刷新整個程序。 這是我的代碼:
<body>
<h:form id="customerForm">
<p:dataTable id="customerlist" var="c" value="#{customerBean.customerList}">
<p:column>
<f:facet name="header">Select</f:facet>
<center>
<p:selectBooleanCheckbox value="#{c.selected}" onchange="this.form.submit()"/>
</center>
</p:column>
</p:dataTable>
<h:commandButton id="testtest" value="test" rendered="#{customerBean.numberSelected() == 0}"/>
</h:form>
</body>
為了簡單起見,我刪除了大多數列。 有什么解決方案? 我已經嘗試過使用Ajax,但這沒用
<p:selectBooleanCheckbox value="#{c.selected}">
<f:ajax event="click" execute="@form" render="@none"/>
</p:selectBooleanCheckbox>
您真的需要提交整個表格嗎? 如果足以重新渲染視圖,請嘗試僅更新表單。 為此,您可以使用primefaces ajax事件。
<p:selectBooleanCheckbox value="#{c.selected}">
<p:ajax update="@form"/>
</p:selectBooleanCheckbox>
如果這不起作用,請告訴我們“ ..ajax,不起作用”的確切含義。 是否提交了任何POST請求? 有人叫“行動/設定者”嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.