`
weibaojun
  • 浏览: 97632 次
  • 性别: Icon_minigender_1
  • 来自: 火星
社区版块
存档分类
最新评论

Ext combobox 动态模糊匹配

    博客分类:
  • Ext
阅读更多

Ext中的combobox有属性typeAhead:true 可以实现模糊匹配,但是是从开始匹配的,如果需要自定的的匹配,则需要监听beforequery方法,实现自己的匹配查询方法:

代码如下:

var gfxmComb  = new Ext.form.ComboBox({
		id : 'gfxmComb',
		store : gfxmStore,
		typeAhead : true,
		mode : 'local',
		editable : true,
		displayField :'xmMc',
		valueField :'xmBm',
		triggerAction : 'all',
		selectOnFocus : true,
		listeners : {
			'beforequery':function(e){
				 
				var combo = e.combo;  
				if(!e.forceAll){  
					var input = e.query;  
					// 检索的正则
					var regExp = new RegExp(".*" + input + ".*");
					// 执行检索
					combo.store.filterBy(function(record,id){  
						// 得到每个record的项目名称值
						var text = record.get(combo.displayField);  
						return regExp.test(text); 
					});
					combo.expand();  
					return false;
				}
			}
		}
	});

 

分享到:
评论
1 楼 来利强 2012-08-08  
  

相关推荐

Global site tag (gtag.js) - Google Analytics