我有一个问题,我已经从ArrayList打印出数据表中的Snowboards。当我有一个按钮将被发送到一个方法,现在只是系统输出它时,问题就出现了。单击该按钮时,我会从arraylist中获取所有ID,而不仅仅是特定的ID。
的index.xhtml
<h:dataTable value="#{snowboardBean.snowList}" var="list">
<h:column>
ID: #{list.id}<br></br>
Product Name: #{list.productName}<br></br>
Brand Name: #{list.brandName} <br></br>
<ui:param name="listID" value="#{list.id}" />
<h:button value="Test" onclick="#{snowboardBean.forwardId(listID)}" />
</h:column>
</h:dataTable>
bean中的ForwardId()
public void forwardId(String productId){
System.out.println("ForwardID");
this.productId = productId;
System.out.println(productId);
System.out.println(this.productId);
}
点击后输出如下: ForwardID 1 ForwardID 2
答案 0 :(得分:0)
在上面的XHTML中,你不需要创建一个param来发送id。而只是像下面那样替换你的XHTML:
<h:dataTable value="#{snowboardBean.snowList}" var="list">
<h:column>
ID: #{list.id}<br></br>
Product Name: #{list.productName}<br></br>
Brand Name: #{list.brandName} <br></br>
<h:commandButton value="Test" action="#{snowboardBean.forwardId(list.idD)}" />
</h:column>
</h:dataTable>