我正在努力寻找与h:dataTable相关的以下设计的解决方案。
我预先显示了一定数量的行。第一列只是复选框。默认情况下禁用其余列。选中复选框后,相应行中的元素将启用。必须在服务器端验证启用行中的值的提交。我能够验证无效输入但是没有找到有条件地使用required =“true”的方法。或任何其他方法。有人可以帮我这个。
由于 巴伦
答案 0 :(得分:2)
我猜你有一个看起来像这样的豆......
public class SomeBean {
boolean selected = false;
String someProperty;
...
}
如果你有这些bean的控制器你的标记看起来像这样......
<h:dataTable value="#{SomeController.someBeans}" var="someBean">
<h:column>
<f:facet name="header">Select</f:facet>
<h:selectBooleanCheckbox value="#{someBean.selected}"/>
</h:column>
<h:column>
<f:facet name="header">Input</f:facet>
<h:inputText value="#{someBean.someproperty}" required="#{someBean.selected}"/>
</h:column>
</h:dataTable>
答案 1 :(得分:0)
你应该有一个方法:
public boolean isSelected(){
return selected;
}