如何将一个空项目添加到ExtJS组合框?
-
29-10-2019 - |
题
我想向Ext.form.ComboBox添加并清空项目(显示值为空白,项目高度保持正常)。我参考了下面的2个链接来配置我的组合框,但它仍然没有显示空白项:
- http://www.ashlux.com/wordpress/2009/09/04/handling-empty-options-with-ext-js-combo-box/
- http://www.sencha.com/forum/showthread.php?52340-How-to-add-a-quote-blank-quot-entry-to-a-ComboBox >
这是我的代码: 通用标签
在Ajax请求之后(即数据项中的3个项目),将加载组合框存储区的数据。而且组合框只有3个项目(不是我预期的4个项目)。 您对我的问题有任何想法吗? 非常感谢!
解决方案
由于以后添加了组合框值,所以为什么不使用一个空白值来初始化存储: 通用标签
稍后,当您执行generaodicetagcode时,该空白将仍然存在。
今天(2017年4月15日)必须重新访问ExtJS 4.2:
最简单的方法是在商店中包括一个空字符串,如上所述,也可以使用商店中的负载侦听器来完成: 通用标签
然后将store.add(theRestOfThem)
配置添加到带有tpl
的组合框:
通用标签
(在OP情况下,显示字段是
)
其他提示
您可以在开头添加“空”记录: 通用标签
通用标签
});
初始化组件时,您可以(在控制器上)执行此操作: 通用标签
关于填充功能: 通用标签
这是我们可以在组合框中添加空白字段的方法
在Java Map或任何其他集合中,将这样的键值 通用标签
在 js文件中,应该是这样的:
组合框的监听器 通用标签
在Ext 4.2.1(可能还有其他)中,只需将其添加到组合框配置中即可: 通用标签
如果商店使用内联数据,那么store.load
甚至不会触发。也许有更好的解决方案,但是我最终在combobox.render
上插入了商店记录:
通用标签
不隶属于 StackOverflow