combo 自动搜索
来源:互联网 发布:安徽中港数据 编辑:程序博客网 时间:2024/06/05 02:24
combo自动查询分local和remote两种模式。
remote模式
远程模式,需要配置的几个参数:
- mode:'remote' 点击下拉菜单,store才开始加载数据 - queryParam:'query' 默认“query“,与后台交互的查询字段名称 - minChars:4 remote模式下默认是4
示例代码:
{ xtype:'combo', hiddenName:"orgId", store:orgStore, displayField:"name", fieldLabel:"部门", valueField:"id", queryParam:'orgName', // 自定义查询参数为orgName mode:"remote" }
local模式
本地模式,需要配置的参数:
- mode:'local' 数据已经被加载 - minChars:0 remote模式下默认是0
注意:
- 问题分析
combo的local模式本身就带有自动搜索功能,但是中文查询可能会无效!!
combo查询实现,是调用其doQuery(q, forceAll)方法来实现,第一个参数q是输入的文本,第二参数forceAll是布尔类型,表示如果为true,输入长度小于minChars也可以强制搜索;如果为false,清除store中之前所有的过滤器。
但是问题就出在q这里,通常情况下我们输入字母、数字自动搜索都是没问题,当输入中文的时候就会出问题。那出什么问题呢?
q实际上是你键盘上键入的字符,举个例子,比如你要搜索”场“,使用拼音输入法,这里的q实际是”chang“,所以中文查询会失败
- 解决方案
使用keyup事件来触发自动搜索,参见示例代码
示例代码:
{ xtype:'combo', hiddenName:"orgId", store:orgStore, displayField:"name", fieldLabel:"部门", valueField:"id", mode:"local", maxHeight:300, enableKeyEvents:true, // 开启键盘事件 listeners:{ keyup:function(that, e, eOpts){ var query = that.getRawValue(); // 获取输入的文本值 that.doQuery(query); // 执行搜索 } } }
总结
- combo自动搜索分remote模式和local模式,配置参数有差异。
- local模式下中文搜索会失败,使用keyup事件实现搜索功能。
0 0
- combo 自动搜索
- 根据输入自动匹配搜索展示的 combo实例
- Combo的自动查询技术
- Ext 利用combo進行模糊搜索
- combo
- combo box取消自动补齐功能
- extjs4 combo 的 键入自动查询
- extjs4 combo 的 键入自动查询
- ext combo 防搜索功能,从后台获得数据
- uva11624 Fire! BFS搜索 TWT Tokyo Olympic 2combo-2
- POJ3414 Pots BFS搜索 TWT TokyoOlympic 4combo-2
- POJ1606 Jugs BFS搜索 TWT TokyoOlympic 4combo-3
- Combo下拉列表框自动展开和关闭!
- 关于Combo控件下拉框自动弹出的问题
- 自动提示(AutoComplete)功能的combo box
- 搜索框自动搜索 -ionic
- 自动搜索调频收音机
- 自动搜索问题
- android随笔03——手势解析器
- Android随笔04——SP
- android随笔05——SQLite
- android随笔06——单元测试
- CentOS6.5安装testlink1.9.14
- combo 自动搜索
- mac下非常好用的free 解压rar的软件:unrarx for mac
- SpringMVC Controller 返回值的可选类型
- 《从零开始学Swift》学习笔记(Day 52)——Cocoa错误处理模式
- iOS 导入七牛SDK
- 如何编译JCEF以及内嵌到桌面应用程序中
- TP-Link 设置
- 全文检索引擎Solr系列—–全文检索基本原理
- oc关键字解读