0

我有一个 JSF 页面,我在其中创建了一个 html 表并使用 ui:repeat 显示行数据。我有一个保存按钮,当我选择特定行时,我希望保存整个行数据。当我尝试选择特定行时,我无法获取行数据。ui:repeat 没有绑定属性将其绑定到支持 bean 数据表。

你能建议如何实现同样的目标吗?提前致谢

4

2 回答 2

1

确保将复选框连接到 bean 属性:

<h:selectBooleanCheckbox id="selection" value="#{listController.checked[item.id]}" />

在您的 bean 中,您需要:

private Map<Integer, Boolean> checked = new HashMap<Integer, Boolean>();

public Map<Integer, Boolean> getChecked() {
    return checked;
}

然后,如果您想知道选择了哪些项目,您可以执行以下操作:

for (Map.Entry<Integer, Boolean> e : checked.entrySet()) {
    if (e.getValue()) {
        // do something with selected row
     }
 }
于 2012-05-28T09:34:26.260 回答
0

您可以通过将当前行作为参数传递到必须在usingonchange事件上调用的操作中来实现此目的。selectBooleanCheckboxjsf:ajax

于 2012-05-28T09:20:19.510 回答