jquery mutilselect 插件添加中英文自动补全
2014-07-25 16:59
435 查看
jquerymutilselect默认只能根据设置的option来进行自动提示
阅读下面的需求:
有这么几个选项:
北京
天津
湖北
输入中文的时候控件可以根据输入的中文自动提示,如输入"北"提示北京,但是如果想输入"bei"提示"北京".控件无法完成这个功能,这个时候需要修改源代码,在jquery.multiselect.filter.js文件中,有一个专门来做提示的函数updateCache,找到这个函数的定义
上面的代码就是新增后的代码。新增的代码也就几行。如下
解释这段代码:
this.rows代表的是每一行可选的项目
this.cache是一个数组,默认初始化所有option中text到这个数组,在用户输入字符之后,会遍历这个数组,通过正则表达式来匹配,匹配上的元素会自动在前端展示出来。
完整源代码下载:
链接:http://pan.baidu.com/s/1c0AdgI0密码:6lck
$.each(availableTags,function(key,value){ $('#channels') .append($("<option></option>") .attr("value",value) .text(value));//默认按text中的value来自动提示 });
阅读下面的需求:
有这么几个选项:
北京
天津
湖北
输入中文的时候控件可以根据输入的中文自动提示,如输入"北"提示北京,但是如果想输入"bei"提示"北京".控件无法完成这个功能,这个时候需要修改源代码,在jquery.multiselect.filter.js文件中,有一个专门来做提示的函数updateCache,找到这个函数的定义
updateCache:function(){ //eachlistitem this.rows=this.instance.menu.find(".ui-multiselect-checkboxesli:not(.ui-multiselect-optgroup-label)"); //cache this.cache=this.element.children().map(function(){ varelem=$(this); //accountforoptgroups if(this.tagName.toLowerCase()==="optgroup"){ elem=elem.children(); } returnelem.map(function(){ returnthis.innerHTML.toLowerCase(); }).get(); }).get(); //下面这一段代码是自定义,添加拼音提示功能 if(this.cache.length>0){ for(vari=0;i<this.cache.length;i++){ vartv=this.cache[i]; varletter=tv+cityMap[tv]; if(letter!=undefined){ this.cache[i]=tv+letter; } } } },
上面的代码就是新增后的代码。新增的代码也就几行。如下
//下面这一段代码是自定义,添加拼音提示功能 if(this.cache.length>0){ for(vari=0;i<this.cache.length;i++){ vartv=this.cache[i]; varletter=tv+cityMap[tv]; if(letter!=undefined){ this.cache[i]=tv+letter; } } }
解释这段代码:
this.rows代表的是每一行可选的项目
this.cache是一个数组,默认初始化所有option中text到这个数组,在用户输入字符之后,会遍历这个数组,通过正则表达式来匹配,匹配上的元素会自动在前端展示出来。
完整源代码下载:
链接:
相关文章推荐
- 使用JQUERY的flexselect插件来实现将SELECT下拉菜单变成自动补全输入框
- jQuery 自动补全插件
- 自己动手制作jquery插件之自动添加删除行的实现
- jquery插件--自动补齐flexselect
- 关于jquery的jquery.autocomplete(自动补全)插件的个人理解
- Jquery实现仿搜索引擎文本框自动补全插件
- jQuery 自动补全插件
- jquery插件整理篇(四)自动补全类插件
- 转 jQuery autocomplete 自扩展插件、自动补全示例
- jquery中插件实现自动添加用户
- -_-#【jQuery插件】Autocomplete 自动补全
- 写一个JQuery输入自动补全的插件
- 在页面中添加jquery的自动补全功能,传输数据采用JSON
- JQuery实现自动补全的插件
- jQuery autocomplete 自扩展插件、自动补全示例
- 自己动手制作jquery插件之自动添加删除行(上)
- jQuery 插件autocomplete自动完成应用(自动补全)(asp.net后台)
- jquery.autocomplete 自动补全插件 在 .net 3.5网站下的应用
- jquery插件整理篇(四)自动补全类插件
- JQuery插件之autocomplete使用指南 ajax自动补全查询