表格和表格在同一页面上。当用户添加表单详细信息并单击添加时,应将数据复制到表中。
当用户输入详细信息并第二次单击添加时(表中已存在的数据),第一个值将被新值覆盖,列表中的下一个值为空。
我们如何在桌面上显示这两个值。
Name.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(值= “#{buyerTO}”) protected BuyerTo buyerTO;
列出buyerTOList = new ArrayList(); // BuyerTO在ViewScope中
public String addBuyer(){
buyerTOList.add(buyerTO);
buyerTO = new BuyerTO();
return "";
}
答案 0 :(得分:2)
您将通过返回非null
/ void
来结束视图范围。您需要返回null
或void
才能保留后续请求的查看范围。
替换
return "";
通过
return null;
或
public void addBuyer() {
// ...
// No return statement.
}