我有一个带有复选框(h:selectOneBooleanCheckbox)的JSF / PrimeFaces 2.x用户界面,其值会影响其他窗口小部件。类似的东西:
[X] checkbox1
[____|V] combobox1
[X] checkbox2
当checkbox1为false时,combobox1的选定值必须为null,而checkbox2也必须为false。
我想在check1检查时使用ajax设置支持bean中的值,但我不知道如何为h添加ajax支持:selectOneBooleanCheckbox
有人可以帮忙吗?谢谢, 罗布
答案 0 :(得分:3)
在checkbox1中使用<f:ajax>
方法嵌套listener
,执行所需作业并呈现combobox1和checkbox1。
类似的东西:
<h:selectBooleanCheckbox value="#{bean.checkbox1}">
<f:ajax listener="#{bean.listener}" render="combobox1 checkbox2" />
<h:selectBooleanCheckbox>
<h:selectOneMenu id="combobox1" value="#{bean.combobox1}">
<f:selectItems ... />
</h:selectOneMenu>
<h:selectBooleanCheckbox id="checkbox2" value="#{bean.checkbox2}" />
与
public void listener() {
if (!checkbox1) {
combobox1 = null;
checkbox2 = false;
}
}
PrimeFaces本身有一个<p:ajax>
,它提供了类似的功能。它仅使用update
属性,而JSF标准<f:ajax>
使用render
属性。