项目中有个需求:编辑combobox的输入域会自动检索匹配项,当没有任何匹配项时,将combobox重置为初始状态。

处理方式:重写输入域的blur事件,判断当前值是否为加载的数据集的子集,如果不是则重置。

脚本如下:

$.fn.combobox.defaults.inputEvents.blur = function(e){
var target = e.data.target;
var opts = $(target).combobox('options');
if (opts.reversed || opts.limitToList){
if (opts.blurTimer){
clearTimeout(opts.blurTimer);
}
opts.blurTimer = setTimeout(function(){
var existing = $(target).parent().length;
if (existing){
if (opts.reversed){
$(target).combobox('setValues', $(target).combobox('getValues'));
} else if (opts.limitToList){
doEnter(target);
}
opts.blurTimer = null;
}
},50);
}
/* 过滤没有匹配项时,重置为初始状态 */
var datas = $(target).combobox('getData');
if (datas) {
var has = false;
datas.map(function(data){
var text = data[opts.textField].trim(),
val = data[opts.valueField],
ctxt = $(target).combobox('getText').trim(),
cVal = $(target).combobox('getValue');
if(text == ctxt && val == cVal) has = true;
});
if(!has) $(target).combobox('reset');
}
}

easyui下拉框过滤优化的更多相关文章

  1. EasyUI下拉框级联

    EasyUI用来实现后台界面还是可以的,毕竟面对的是小众群体而非广大的用户,简单为美.这里想聊的功能是一种下拉框的联动,比如我选中了下拉框A的某一项,那么下拉框B的选项就是甲乙丙丁,如果我选了A的另一 ...

  2. Java easyui 下拉框默认选中第一个

    html代码: <tr> <td> <div style="margin-bottom:5px">计价方式:   <%--下拉框默认选中第 ...

  3. 在easyui中如何修改combobox的下拉框的高度为自适应高度

    在easyui中,有时候easyui下拉框的高度比较高,如果我们的值比较少,而下拉框的高度很高的话看起来不好看,修改前效果如下所示: 要修改下拉框的高度和我们的值自适应的 话,只要添加一个panelH ...

  4. easyui combotree下拉框多选赋值

    发现jquery.easyui.min.js 1.3.4版本的用setValues给多选下拉框赋值不成功,只能用1.3.1版本的 Html代码: <input id="ProductL ...

  5. easyui的combobox下拉框初始化默认值以及保持该值一直显示的方法

    easyui的combobox下拉框默认初始值是空,下面是实现从远程加载数据之后初始化默认值,以及让该值一直排在下拉框的最顶部的方式. 目前的需求是需要在初始化的时候添加"全部数据库&quo ...

  6. jquery easyui无法绑定下拉框内容

    最近在研究jquery easyui的DataGrid,发现DataGrid中的下拉框无法绑定值,找了很久也没发现是具体问题所在,最后还是同事帮忙搞定的.具体问题竟然是jquery easyui提供的 ...

  7. easyui源码翻译1.32--Combo(自定义下拉框)

    前言 扩展自$.fn.validatebox.defaults.使用$.fn.combo.defaults重写默认值对象.下载该插件翻译源码 自定义下拉框显示一个可编辑的文本框和下拉面板在html页面 ...

  8. easyui源码翻译1.32--ComboTree(树形下拉框)

    前言 扩展自$.fn.combo.defaults和$.fn.tree.defaults.使用$.fn.combotree.defaults重写默认值对象.下载该插件翻译源码 树形下拉框结合选择控件和 ...

  9. easyui源码翻译1.32--ComboGrid(数据表格下拉框)

    前言 扩展自$.fn.combo.defaults和$.fn.datagrid.defaults.使用$.fn.combogrid.defaults重写默认值对象.下载该插件翻译源码 数据表格下拉框结 ...

随机推荐

  1. metasploit framework(三):exploit模块

    exploit模块 分为主动,被动exploit 主动exploit:攻击者(通常是客户端)主动发起连接请求,然后发送exploit给被攻击者(通常是服务器端) 被动exploit:被攻击者(通常是客 ...

  2. Java8中的[方法引用]“双冒号”——走进Java Lambda(四)

    前面的章节我们提及到过双冒号运算符,双冒号运算就是Java中的[方法引用],[方法引用]的格式是 类名::方法名 注意是方法名哦,后面没有括号“()”哒.为啥不要括号,因为这样的是式子并不代表一定会调 ...

  3. jdbctemplate 批量插入

    public void batchImport(List<Map<String, Object>> list) { String sql = "insert into ...

  4. sqoop2 缺少 jackson-core-asl-1.8.8.jar 和 jackson-mapper-asl-1.8.8.jar 这两个jar包

    [root@spark2 client]# cat /var/log/sqoop2/localhost.2017-12-22.log 十二月 22, 2017 10:29:17 上午 org.apac ...

  5. pta l3-3(社交集群)

    题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805053141925888 题意:给定n个人,以及每个人的兴趣 ...

  6. unity项目开发必备插件Asset Hunter 2(资源猎人2)

    unity必备插件 Asset Hunter 2 2.4 , 工程项目过大,垃圾太多之后的清洁利器,能识别 ,移除你用不到的资源 扫码时备注或说明中留下邮箱 付款后如未回复请至https://shop ...

  7. c语言的基础知识

    break只对应for循环,while循环,switch case分支. (a>b)?y:n    如果A大于B,那么选择Y的结果,如果A小于B,那么选择N的结果. ^在c语言中代表的是按位异或 ...

  8. ajax中的contendType和dataType知识点梳理

    在ajax中有2个参数比较重要,之前一直没有搞清楚,下面我们开始梳理一下 1.contentType字段:这个字段的意思,ajax发送给后端的数据是什么类型 如果在ajax中不指定这个属性,则默认是u ...

  9. css重要知识点

    1.float:left;表示靠左显示.它是相对于距离最近的且以relative作为position的父元素而言的. 2.块级元素和行内元素 块级元素:占据了一个矩形框的元素,display属性的值为 ...

  10. Redis 与Spring-data-redis 整合后封装的工具类

    此工具类方法是使用了redis 与spring 整合后,才可以使用的工具类,将 spring-data-redis 一些我们开发中常用的方法进行了封装,方便我们日常开发中进行调用: package c ...