如果选中boolCheckBox,则组件可见

时间:2013-09-09 12:18:47

标签: primefaces visible

我有一个网页,其中包含几个组件,当我点击boolCheckbox时,我想要消除其他一些组件,我试图使用渲染属性,但它不起作用。

是否有一个简单组件的可见属性(或其等价物),如:boolCheckBox,inputText,...?

<p:selectBooleanCheckbox value="#{Bean.check}" >
    <p:ajax update="check2" listener="#{Bean.function()}"/>  
</p:selectBooleanCheckbox>

<p:selectBooleanCheckbox id="check2" value="#{Bean.check2}" rendered="#{Bean.check}">
</p:selectBooleanCheckbox>
谢谢。

2 个答案:

答案 0 :(得分:2)

您正在更新值更改后不应显示的组件。您应该更新父组件。例如:

<p:selectBooleanCheckbox value="#{Bean.check}" >
    <p:ajax update="check2-parent" listener="#{Bean.function()}"/>  
</p:selectBooleanCheckbox>

<p:panel id="check2-parent">
    <p:selectBooleanCheckbox id="check2" value="#{Bean.check2}" rendered="#{Bean.check}"/>
</p:panel>

答案 1 :(得分:0)

使用:

$('checkbox').on('click', function() {
 if($(this).is(':checked')) {
  // checked do something
  $('.classname').hide();
 }
 else {
  // not checked do something else
  $('.classname').show();
 }
});