问题描述
||
我有大约90个项目的表格。有没有一种方法可以收集生成的值,而无需在服务器端设置那么多的设置器?我不能解析使用JavaScript生成的列表/数组/对象吗?这对我有很大帮助。
非常感谢,
马丁
解决方法
创建一个“ 0”属性。
@ManagedBean
@ViewScoped
public class Bean {
private Map<String,String> selectedItems = new HashMap<String,String>();
public Map<String,String> getSelectedItems() {
return selectedItems;
}
// ...
}
可以用作
<h:selectOneMenu value=\"#{bean.selectedItems.one}\">
...
</h:selectOneMenu>
要么
<h:selectOneMenu value=\"#{bean.selectedItems[\'one\']}\">
...
</h:selectOneMenu>
one
成为地图键,选择的项目成为地图值。
(是的,不需要二传手!)
更新一个替代方案是在列中有<h:dataTable>
和<h:selectOneMenu>
。这样,您可以只使用一个List<Item>
吸气剂(不需要一个设置器)。有关示例,另请参见此问题的答案。