保存后,禁用复选框会丢失值

时间:2012-03-22 15:28:04

标签: xpages

我有一个禁用的复选框。我单击一个按钮,将该复选框的值设置为“已选中”。当我去保存时,复选框丢失了它的值。有人有主意吗?这是一个简单的模型:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view
    xmlns:xp="http://www.ibm.com/xsp/core">
    <xp:this.data>
        <xp:dominoDocument
            var="MainForm"
            formName="MainForm" />
    </xp:this.data>
    <xp:checkBox
        text="CheckBox"
        id="CheckBox"
        value="#{MainForm.CheckBox}"
        disabled="true"
        checkedValue="Y"
        uncheckedValue="N">
    </xp:checkBox>
    <xp:br></xp:br>
    <xp:button
        id="setBc"
        value="Set CheckBox">
        <xp:eventHandler
            event="onclick"
            submit="true"
            refreshMode="partial"
            refreshId="CheckBox">
            <xp:this.action><![CDATA[#{javascript:getComponent("CheckBox").setValue("Y");}]]></xp:this.action>
        </xp:eventHandler>
    </xp:button>
    <xp:button
        value="Save"
        id="button5">
        <xp:eventHandler
            event="onclick"
            submit="true"
            refreshMode="complete">
            <xp:this.action><![CDATA[#{javascript:MainForm.save();}]]></xp:this.action>
        </xp:eventHandler>
    </xp:button>
</xp:view>

2 个答案:

答案 0 :(得分:6)

页面提交中不包含已禁用的控件。

您可以将禁用的复选框与xp:inputHidden控件组合使用,该控件是页面提交中包含的隐藏输入字段。

答案 1 :(得分:0)

这可能是Domino 8.5.3的特定问题(如果您正在使用它)。 我们注意到,自从我们升级到8.5.3后,我们遇到了一个问题(在正常的经典多米诺骨牌网页上),标记为“已禁用”的字段不会保存到文档中。 我们不得不通过不使用为以后必须保存的值禁用的“正确”字段来构建。 另一种解决方法是在发布帖子脚本之前删除禁用的设置。

我们相当确定这一切都发生在8.5.3的发布