对于数组中的示例,有
编辑 - > #{} testBean.edit
删除 - > #{} testBean.delete
复制 - > #{testBean.copy}
是否可以使用循环或其他东西
创建命令按钮for(i=0;i<=array.length;i++)<br>
{
print '<h:commandbutton value="#{testBean.array.name}" action="#{testBean.array.action}" />'
}
所以输出shld就像
<h:commandbutton value="Edit" action="#{testBean.edit}" />
<h:commandbutton value="Delete" action="#{testBean.delete}" />
<h:commandbutton value="Copy" action="#{testBean.copy}" />
答案 0 :(得分:1)
只有将集合(地图?)更改为
时,才有可能Edit --> edit Delete --> delete Copy --> copy
E.g。
Map<String, String> buttons = new LinkedHashMap<String, String>();
buttons.put("Edit", "edit");
buttons.put("Delete", "delete");
buttons.put("Copy", "copy");
然后您可以按如下方式循环:
<ui:repeat value="#{bean.buttons}" var="button">
<h:commandButton value="#{button.key}" action="#{bean[button.value]}" />
</ui:repeat>
作为替代方案,您可以在bean端以编程方式创建组件。
答案 1 :(得分:0)
尝试过Facelet重复标记 http://www.roseindia.net/jsf/repeat.shtml