Xpages xpage上组合框中的表达式语言

Xpages xpage上组合框中的表达式语言,xpages,xpages-ssjs,Xpages,Xpages Ssjs,在xpage上,我有一个组合框,其中通过表达式语言设置默认值: defaultValue="#{strings.field_mandate}" 这将填充正确的值 如果我计算combobox的Disabled属性,并通过以下方式计算计算文本控件中combobox的值: getComponent("mandate").getValue() 我有一种奇怪的行为 最初,组合框被禁用,并且计算的值正确(strings.properties文件中的值)。但是,如果我将Disabled的值切换为false

在xpage上,我有一个组合框,其中通过表达式语言设置默认值:

defaultValue="#{strings.field_mandate}"
这将填充正确的值

如果我计算combobox的Disabled属性,并通过以下方式计算计算文本控件中combobox的值:

getComponent("mandate").getValue()
我有一种奇怪的行为

最初,组合框被禁用,并且计算的值正确(strings.properties文件中的值)。但是,如果我将Disabled的值切换为false,则计算出的文本值将变成字面上的#{strings.field_}

这是为什么?我如何避免

<xp:comboBox id="mandate" value="#{ds.mandate}" defaultValue="#{strings.field_mandate}">
    <xp:selectItem itemLabel="#{strings.field_mandate}" itemValue="null"/>
    <xp:selectItems>
        <xp:this.value><![CDATA[#{javascript:getListMandates();}]]></xp:this.value>
    </xp:selectItems>
    <xp:eventHandler event="onchange" submit="true" refreshMode="complete">
        <xp:this.action><![CDATA[#{javascript:setSelectedMandateValues();}]]></xp:this.action>
    </xp:eventHandler>
</xp:comboBox>

尽量避免
getComponent().getValue()
。计算应始终发生在组件绑定到的值上。因此,将其绑定到一个作用域变量,并将该变量设置为初始值。这将缓解问题