XPages-复选框已选中/未选中

时间:2018-07-09 13:39:37

标签: xpages xpages-ssjs

我有一个复选框,其中未选中和已选中的值为0或1。

我有一个单选按钮,单击该按钮时,将其设置为0,即可正常工作。

如果未选中,则禁用表单上的字段。

但是,当我选中复选框时,它会重新加载页面并正确启用表单,但是不再选中该复选框,因此每次后续刷新都会禁用该表单。打开文档也是如此。该复选框绑定到表单,但是即使后端表单上的值为1,也不会选中该复选框,并且不会启用字段。有任何想法吗?下面的复选框代码,谢谢:

编辑:为清楚起见,chkDoNotShowAgain是复选框ID,ConfirmedDeclaration是绑定到的字段的名称

<xp:checkBox id="chkDoNotShowAgain"
                        text="I confirm."
                        checkedValue="#{javascript:1}" uncheckedValue="#{javascript:0}"
                        value="#{document1.ConfirmedDeclaration}">



                        <xp:eventHandler event="onclick" submit="true"
                            refreshMode="partial" refreshId="refreshResponse">
                            <xp:this.action><![CDATA[#{javascript:try{
getComponent("chkDoNotShowAgain").setValue(1);
document1.replaceItemValue("ConfirmedDeclaration",1);
document1.replaceItemValue("Status","New");
var dt = new Date();
var arrHistory:array = AddObjectivesHistoryItem(currentDocument, dt, "Confirmed", userBean.displayName);
document1.save();
context.reloadPage()

}catch(e){
    openLogBean.addError(e,this.getParent());
}
}]]></xp:this.action>
                        </xp:eventHandler>

                    </xp:checkBox>

1 个答案:

答案 0 :(得分:0)

您需要reloadPage吗?您是否尝试过不重新加载而仅进行部分刷新?

如果不打扰您,请尝试将复选框形式的数字中存储的数据类型更改为String,尝试在XPages中使用复选框中的数字或单选时出现一些问题。