XPages组合框控件,用户可以在其中输入列表之外的值 [英] xpages combobox control where user can enter values not in list

查看:11
本文介绍了XPages组合框控件,用户可以在其中输入列表之外的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要创建一个comboBox控件,该控件显示值列表,但允许用户输入列表中没有的值。我看到了使用dijit.form.comboBox可以做到这一点的地方,但我知道在8.5版本之后不再起作用。所以那条路线是不存在的。这应该是非常基本的,我猜我只是遗漏了某个地方的一处房产。 有什么建议吗?

提前感谢

推荐答案

以下是核心控件xp:comboBox的工作示例,用户可以在没有的情况下使用扩展库输入不在列表中的值:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view
    xmlns:xp="http://www.ibm.com/xsp/core">
    <xp:this.resources>
        <xp:dojoModule
            name="dijit.form.ComboBox"
            rendered="true">
        </xp:dojoModule>
    </xp:this.resources>

    <xp:comboBox
        id="comboBox1"
        value="#{sessionScope.Test}"
        dojoType="dijit.form.ComboBox"
        disableValidators="true">
        <xp:selectItem itemLabel="abc"></xp:selectItem>
        <xp:selectItem itemLabel="def"></xp:selectItem>
        <xp:selectItem itemLabel="xyz"></xp:selectItem>
    </xp:comboBox>

    <xp:button
        value="Submit"
        id="button1">
        <xp:eventHandler
            event="onclick"
            submit="true"
            refreshMode="complete"
            immediate="false"
            save="true">
        </xp:eventHandler>
    </xp:button>
</xp:view>

这里有三点很重要:

  1. 添加dojoModule资源dijit.form.ComboBox
  2. 添加dojoType="dijit.form.ComboBox"
  3. 添加disableValidators="true",否则不会提交列表中没有的新值。

如果允许您在项目中使用扩展库,那么您当然可以使用Dojo表单控件"Dojo Combo Box"xe:djComboBox

这篇关于XPages组合框控件,用户可以在其中输入列表之外的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆