本文介绍了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>
这里有三点很重要:
- 添加dojoModule资源
dijit.form.ComboBox
- 添加
dojoType="dijit.form.ComboBox"
- 添加
disableValidators="true"
,否则不会提交列表中没有的新值。
如果允许您在项目中使用扩展库,那么您当然可以使用Dojo表单控件"Dojo Combo Box"xe:djComboBox
。
这篇关于XPages组合框控件,用户可以在其中输入列表之外的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!