0

表格和表格在同一页上。当用户添加表单详细信息并单击添加时,应将数据复制到表中。

当用户输入详细信息并第二次单击添加时(表中已经存在数据),第一个值被新值覆盖,列表中的下一个为空。

我们如何在表格上显示这两个值。

名称.xhtml

<h:form>
  <h:inputText value="#{bean.fName}"/>
  <h:inputText value="#{bean.lName}"/>

   <h:dataTable value="#{bean.list}" var="name">
     <h:column>
       <h:outputText value="#{name.fName}">
     </h:column> 
   </h:dataTable>
   <h:commandLink action="#{bean.add}"/>
 </h:form>

Bean.java //Bean类是ViewScoped

@ManagedProperty(value="#{buyerTO}") protected BuyerTo BuyerTO;

列出买家TOList = new ArrayList(); // BuyerTO 在 ViewScope 中

public String addBuyer(){
 buyerTOList.add(buyerTO);
 buyerTO = new BuyerTO();
 return "";

}

4

1 回答 1

2

您通过返回非null/来结束视图范围void。您需要返回nullvoid以保留后续请求的视图范围。

代替

return "";

经过

return null;

或者

public void addBuyer() {
    // ...
    // No return statement.
}
于 2012-10-29T15:09:06.017 回答