如何使复选框可编辑

How to make a check box editable

Domino 8.5.3 FP5,Designer 9.0.1.

我有一个空的 xpage,其中只包含以下复选框。我无法使其可编辑。它显示正确的值,但显示为已禁用。

        <xp:checkBox text="Label" id="checkBox1" uncheckedValue="true" 
        checkedValue="false" 
        value="#{javascript:jBeanConfigSupport.validationEnabledTxt}">
        </xp:checkBox>

如果我删除对 Java bean 的绑定,一切都运行良好。这是Java bean代码(部分)

private boolean isValidationEnabled=true;

    public String getValidationEnabledTxt() {
        return String.valueOf(isValidationEnabled);
    }

    public void setValidationEnabledTxt(String onOff) {
        isValidationEnabled=Boolean.parseBoolean(onOff);
    }
    public void setValidationEnabledTxt(boolean onOff) {
        isValidationEnabled=onOff;
    }

我哪里错了?

弗朗切斯科,

您需要有一个有效的 setter 方法才能对其进行编辑。在您的情况下,setValidationEnabledTxt() 方法可能存在问题,导致 UI 中的字段为只读。

尝试将 "this" 添加到您的代码中,使其显示为 this.isValidationEnables = Boolean.parseBoolean(onOff);

您正在使用 SSJS 进行绑定,因此不是绑定到 bean 的 validationEnabledTxt 属性,而是使用 jBeanConfigSupport.validationEnabledTxt 的结果来确定应该绑定的内容到。 value="#{jBeanConfigSupport.validationEnabledTxt}" 应该可以映射到 getter 和 setter。