Jsf 2 如何清除p:dataTable中的所有输入字段?
我将JSF2.0用于PrimeFaces。我有一个Jsf 2 如何清除p:dataTable中的所有输入字段?,jsf-2,primefaces,Jsf 2,Primefaces,我将JSF2.0用于PrimeFaces。我有一个。我在一列中有一个。我可以编辑并保存它。我也有一个复位按钮,但它不工作 <h:form id="f"> <f:facet name="head">Enteri Karbon Hesaplaması</f:facet> <p:dataTable value="#{orderBean.orderList}" var="o" id="bir"> <p:column&g
。我在一列中有一个
。我可以编辑并保存它。我也有一个复位按钮,但它不工作
<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");
}
// ...
}
@ManagedBean
@会议范围
公共类OrderBean{
私有静态最终ArrayList orderList=
新建ArrayList(Arrays.asList(
新秩序(“Sütİneği”,99,0),
新秩序(“Diğerİnekler”,58,0),
新订单(“Koyun”,5,0),
新秩序(“Keçi”,5,0),
新命令(“At”,18,0),
新秩序(“Eşek”,10,0)
)
);
公共字符串saveAction(){
对于(订单:订单列表){
order.setEditable(false);
}
返回null;
}
公共字符串编辑操作(顺序){
order.setEditable(true);
返回null;
}
公共无效重置(){
RequestContext.getCurrentInstance().reset(“form:f”);
}
// ...
}
更改命令按钮的类型以重置ie:
<p:commandButton type="reset" value="Temizle" update="bir" process="@this" actionListener="#{orderBean.reset}"/>
另外,由于您基本上是想再次将datatable设置为空,您可以在重置功能中将orderList设置为空列表。如果您只将“Type=“reset””置于所有输入重新启动,而不转到其他页面,则可以使用
重置表单。。。我怎样才能解决这个问题?