Xpages将值添加到组合框中

时间:2014-09-08 05:20:40

标签: combobox xpages xpages-ssjs

我有一个组合框,我希望可以使用按钮和输入字段在组合框中添加新值。我尝试过:

var value = getComponent("input").getValue(); 
getComponent("combobox").setValue(value);

但它不起作用。

谢谢,

1 个答案:

答案 0 :(得分:4)

使用viewScope,例如viewScope.selectItems变量。

  • 将此viewScope用作selectItems列表。
  • 将初始值添加到其中。
  • 稍后,在此viewScope中添加一个新项目,然后它将出现在组合框的选择项列表中。

这是一个有效的例子:

<xp:comboBox
    id="comboBox1"
    value="#{sessionScope.test}">
    <xp:selectItems>
        <xp:this.value><![CDATA[#{javascript:
        if (!viewScope.selectItems) {
            viewScope.selectItems = ["your","initial","values"];
        }
        return viewScope.selectItems;}]]></xp:this.value>
    </xp:selectItems>
</xp:comboBox>
<xp:inputText
    id="inputText1"
    value="#{viewScope.newItem}">
</xp:inputText>
<xp:button
    value="Add to selectItems"
    id="button1">
    <xp:eventHandler
        event="onclick"
        submit="true"
        refreshMode="complete">
        <xp:this.action><![CDATA[#{javascript:
            viewScope.selectItems.add(viewScope.newItem); 
            viewScope.newItem = "";
        }]]></xp:this.action>
    </xp:eventHandler>
</xp:button>