primarfaces p:selectBooleanCheckbox默认选中状态



我对这个简单的p:selectBooleanCheckbox组件有一个问题:

<p:selectBooleanCheckbox value="#{BackingBean.booleanFlag}"> 
      <p:ajax event="change" global="false" />
</p:selectBooleanCheckbox>

在后台bean中,我在@PostConstruct方法中设置了布尔变量boolean flag = true的默认状态。为什么setter方法调用'false'值????以这种方式,似乎不可能有一个默认选中的复选框…

此行为也(且仅)发生在其他"布尔状态组件"中,如新的pf 5.0组件p:inputSwitch。(例如pf扩展的三状态复选框有一个基于字符串的状态,它工作得很好)

true表示已检查,false表示未检查....

private boolean booleanFlag = true; // DEFAULT CHECKED 
public boolean isBooleanFlag() {
    return booleanFlag;
}
public void setBooleanFlag(boolean value) {
    this.booleanFlag = value;
}

问题是setBooleanFlag是用参数value = false

调用的

不,可以有一个默认的选中复选框,当你在后台bean中声明它时,只需将其值初始化为true:

private boolean booleanFlag = true;
public boolean isBooleanFlag() {
    return booleanFlag;
}
public void setBooleanFlag(boolean value) {
    this.booleanFlag = value;
}

在你的页面:

<p:selectBooleanCheckbox value="#{BackingBean.booleanFlag}"> 
    <p:ajax event="change" global="false" />
</p:selectBooleanCheckbox>

相关内容

  • 没有找到相关文章

最新更新