easyui combobox开启搜索自动完成功能的实例代码


Posted in Javascript onNovember 08, 2016

combo.json

[{
 "id":-1,
 "text":" ",
 "spell":""

},{
 "id":1,
 "text":"类型1",
 "spell":"lx1"
},{
 "id":2,
 "text":"类型2",
 "spell":"lx2"
},{
 "id":3,
 "text":"类型3",
 "spell":"lx3"
},{
 "id":4,
 "text":"类型4",
 "spell":"lx4"
},{
 "id":5,
 "text":"类型5",
 "spell":"lx5"
}]

下面是代码示例

<form>
  <input type="text" id="combox1">
</form>
/**
   * easyui combobox 开启搜索功能,自动装载选中的项目处理函数
   */
  function onComboboxHidePanel() {
    var el = $(this);
    el.combobox('textbox').focus();
    // 检查录入内容是否在数据里
    var opts = el.combobox("options");
    var data = el.combobox("getData");
    var value = el.combobox("getValue");
    // 有高亮选中的项目, 则不进一步处理
    var panel = el.combobox("panel");
    var items = panel.find(".combobox-item-selected");
    if (items.length > 0) {
      var values = el.combobox("getValues");
      el.combobox("setValues", values);
      return;
    }
    var allowInput = opts.allowInput;
    if (allowInput) {
      var idx = data.length;

      data[idx] = [];
      data[idx][opts.textField] = value;
      data[idx][opts.valueField] = value;
      el.combobox("loadData", data);
    } else {
      // 不允许录入任意项, 则清空
      el.combobox("clear");
    }
  }
  $("#combox1").combobox({
    required: true,
    editable: true,
    missingMessage: '请选择装载物料',
    valueField: "id",
    textField: "text",
    method: 'get',
    url: 'combo.json',
    mode: "local",
    onHidePanel: onComboboxHidePanel,
    filter: function (q, row) {
      //定义当'mode'设置为'local'时如何过滤本地数据,函数有2个参数:
      //q:用户输入的文本。
      //row:列表行数据。
      //返回true的时候允许行显示。
      //return row[$(this).combobox('options').textField].indexOf(q) > -1;
      return row["spell"].indexOf(q) >= 0;
    }
  });

以上这篇easyui combobox开启搜索自动完成功能的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
捕获浏览器关闭、刷新事件不同情况下的处理方法
Jun 02 Javascript
jQuery插件实现表格隔行换色且感应鼠标高亮行变色
Sep 22 Javascript
js之事件冒泡和事件捕获详细介绍
Oct 28 Javascript
详解Bootstrap四种图片样式
Jan 04 Javascript
JavaScript实现设计模式中的单例模式的一些技巧总结
May 17 Javascript
jQuery手指滑动轮播效果
Dec 22 Javascript
微信小程序实战之顶部导航栏(选项卡)(1)
Jun 19 Javascript
Vue中的vue-resource示例详解
Nov 02 Javascript
微信小程序实现左侧滑栏过程解析
Aug 26 Javascript
layui表格内容溢出的解决方法
Sep 06 Javascript
vue 组件之间事件触发($emit)与event Bus($on)的用法说明
Jul 28 Javascript
Vue 请求传公共参数的操作
Jul 31 Javascript
基于Vuejs框架实现翻页组件
Jun 29 #Javascript
vue2.0+webpack环境的构造过程
Nov 08 #Javascript
详解React-Todos入门例子
Nov 08 #Javascript
JS+CSS3制作炫酷的弹窗效果
Nov 08 #Javascript
值得学习的bootstrap fileinput文件上传工具
Nov 08 #Javascript
BootStrap table使用方法分析
Nov 08 #Javascript
bootstrap监听滚动实现头部跟随滚动
Nov 08 #Javascript
You might like
jquery tools 系列 scrollable(2)
2009/09/06 Javascript
JavaScript 打地鼠游戏代码说明
2010/10/12 Javascript
javascript打印输出json实例
2013/11/11 Javascript
Node.js中child_process实现多进程
2015/02/03 Javascript
javascript中的previousSibling和nextSibling的正确用法
2015/09/16 Javascript
js运动应用实例解析
2015/12/28 Javascript
JS实现兼容火狐及IE iframe onload属性的遮罩层隐藏及显示效果
2016/08/23 Javascript
原生js实现键盘控制div移动且解决停顿问题
2016/12/05 Javascript
Jquery Easyui分割按钮组件SplitButton使用详解(17)
2016/12/18 Javascript
详解js中==与===的区别
2017/01/08 Javascript
js实现一个猜数字游戏
2017/03/31 Javascript
bootstrap表单示例代码分享
2017/05/18 Javascript
详解用vue编写弹出框组件
2017/07/04 Javascript
JS返回顶部实例代码
2020/08/09 Javascript
javascript自定义事件功能与用法实例分析
2017/11/08 Javascript
深入理解Vue 组件之间传值
2018/08/16 Javascript
Vue中 key keep-alive的实现原理
2018/09/18 Javascript
深入理解nodejs搭建静态服务器(实现命令行)
2019/02/05 NodeJs
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
JS操作Fckeditor的一些常用方法(获取、插入等)
2020/02/19 Javascript
javascript 数组(list)添加/删除的实现
2020/12/17 Javascript
Python 分析Nginx访问日志并保存到MySQL数据库实例
2014/03/13 Python
Python实现的下载8000首儿歌的代码分享
2014/11/21 Python
Python性能提升之延迟初始化
2016/12/04 Python
python编程羊车门问题代码示例
2017/10/25 Python
将字典转换为DataFrame并进行频次统计的方法
2018/04/08 Python
python numpy 部分排序 寻找最大的前几个数的方法
2018/06/27 Python
英国最大最好的无人机商店:Drones Direct
2019/07/12 全球购物
车祸赔偿收入证明
2014/01/09 职场文书
大型公益活动策划方案
2014/08/20 职场文书
仓库保管员岗位职责
2015/02/09 职场文书
无保留意见审计报告
2015/06/05 职场文书
焦点访谈观后感
2015/06/11 职场文书
乔迁新居祝福语
2019/11/04 职场文书
MySQL如何快速创建800w条测试数据表
2022/03/17 MySQL
三星 3nm 芯片将于第二季度开始量产
2022/04/29 数码科技