我正在使用PrimeFaces的JSF 2.0。我有一個<p:dataTable>
。我在列中有一個<p:inputText>
。我可以編輯並保存它。我也有一個重置按鈕,但它不起作用。如何清除p:dataTable中的所有輸入字段?
<h:form id="f">
<f:facet name="head">Enteri Karbon Hesaplaması</f:facet>
<p:dataTable value="#{orderBean.orderList}" var="o" id="bir">
<p:column>
<f:facet name="header">Hayvan Adi</f:facet>
<h:outputText value="#{o.hayvanadi}"/>
</p:column>
<p:column>
<f:facet name="header">Karbon Salinimi Değeri</f:facet>
<h:outputText value="#{o.karbonsalinimi}"/>
</p:column>
<p:column>
<f:facet name="header">Adet</f:facet>
<p:inputText id="spinner" maxlength="12" value="#{o.adet}"/>
</p:column>
</p:dataTable>
<p:commandButton value="Kaydet" action="#{orderBean.saveAction()}" update="bir"/>
<p:commandButton value="Temizle" update="bir" process="@this" actionListener="#{orderBean.reset}"/>
</h:form>
這是我支持bean的相關部分:
@ManagedBean
@SessionScoped
public class OrderBean {
private static final ArrayList<Order> orderList =
new ArrayList<Order>(Arrays.asList(
new Order("Süt İneği", 99 , 0),
new Order("Diğer İnekler", 58, 0),
new Order("Koyun",5, 0),
new Order("Keçi",5, 0),
new Order("At ",18, 0),
new Order("Eşek ",10, 0)
)
);
public String saveAction() {
for (Order order : orderList){
order.setEditable(false);
}
return null;
}
public String editAction(Order order) {
order.setEditable(true);
return null;
}
public void reset() {
RequestContext.getCurrentInstance().reset("form:f");
}
// ...
}
非常多 – user3190168
+1這就是我要做的 – gtgaxiola
如果你只把''Type ='reset'''所有的輸入重新啓動,但不會去其他頁面......我該如何解決這個問題? – cheloncio