修改easyui combobox源码,实现模糊搜索
来源:互联网 发布:程序员思维修炼过程 编辑:程序博客网 时间:2024/05/08 06:43
easyui combobox搜索功能太差劲了,接下来动手改进一下:
/** * 数据过滤(本地)或者请求(远程) * parmas[target] 承载combobox的DOM * parmas[q] 用户输入的文本 */ function doQuery(target, q) { var opts = $.data(target, "combobox").options; //设置values?谁会输入valueField呢?q为text,把text作为value带进去是什么意思呢? //个人觉得这个地方不合理 if (opts.multiple && !q) { setValues(target, [], true); } else { setValues(target, [q], true); } if (opts.mode == "remote") {//如果为remote模式,则请求远程数据 request(target, null, { q : q }, true); } else {//本地模式 var panel = $(target).combo("panel"); //隐藏所有下拉选项 panel.find("div.combobox-item").hide(); var data = $.data(target, "combobox").data; for (var i = 0; i < data.length; i++) { //如果根据text过滤到(过滤规则为:包含用户输入值即匹配)匹配选项,则显示、设置选项。 if (opts.filter.call(target, q, data[i])) { var v = data[i][opts.valueField]; var s = data[i][opts.textField]; var item = panel.find("div.combobox-item[value=\"" + v + "\"]"); //显示item item.show(); if (s == q) {//完全匹配(即完全等于) //设置values setValues(target, [v], true); //添加选中样式 item.addClass("combobox-item-selected"); } } } } };
原来的匹配方式:
这样必须要开头完全匹配,实在不好用。
//return row[opts.textField].indexOf(q)==0;//改进升级版:
filter:function(q,row){var opts=$(this).combobox("options");//return row[opts.textField].indexOf(q)>-1;return row[opts.textField].toLowerCase().indexOf(q.toLowerCase())>-1;}模糊搜索,不区分大小写。
这样就改好了~试试看效果吧~
0 0
- 修改easyui combobox源码,实现模糊搜索
- 修改easyui combobox源码,实现模糊搜索
- easyui-combobox下拉框修改源码 实现模糊搜索
- easyui修改源码实现combobox的真正模糊查询
- easyui修改源码实现combobox的真正模糊查询
- easyUI修改源码实现combobox的真正模糊查询
- EasyUi模糊匹配搜索框combobox
- easyUI combobox 文本框模糊搜索问题
- easyui-combobox---ajax获取数据库JSON数据,实现搜索框实时显示模糊搜索结果
- easyui combobox模糊匹配
- easyui combobox模糊查询
- easyui combobox实现搜索下拉补全功能
- jquery easyui combobox模糊过滤
- C#用ComboBox实现模糊搜索 解决各种细节问题
- easyui-模糊搜索
- easyui tree 模糊搜索
- combobox模糊搜索(收藏)
- easyui combobox 动态搜索框
- Oracle Database Cardinality Feedback
- minGW官方版与TDM版构建的差异(gcc -v)
- 深入理解linux内核v4l2框架之videobuf2
- mysql主从复制
- Oracle Execution Plan -- Statistics
- 修改easyui combobox源码,实现模糊搜索
- 图像卷积,图像FFT卷积的一些应用(去光照影响,图像放大,添加签名)
- mono touch :Displaying Alerts
- 程序员编程艺术第一~三十七章集锦与总结,及免积分PDF下载
- 完美移植Android4.0中的spinner控件用于低版本的系统
- netty 入门例子
- 数据通信中数据的交换方式小结
- <<与++的问题运算与输出顺序
- HttpClient模拟客户端向 服务器接口 传递 Json 数据