在项目里使用了EasyUI的Combobox,当ComboBox的item是英文时,都能正常检索出对应项,但是如果使用中文输入法输入几个字母然后通过按shift键输入时,奇怪的事情发生了,combobox无法检索出正确的值.

 
我们用的easyui版本是1.4.4
 
需要修改jquery.easyui.min.js  给combobox控件添加了一个input事件绑定:
 
在源码的12424行:if(opts.editable){ 在这个方法体}之前,加入代码:
 /**解决jQuery EasyUI Combo以及其继承者无法检索中文输入的问题**/
var _85b = t.combo("textbox");
_85b.bind("input",function(e){
if(_96e.timer){
clearTimeout(_96e.timer);
}
_96e.timer=setTimeout(function(){
var q=_85b.val();
if(_96e.previousValue != q){
_96e.previousValue = q;
//_672(_66c);
t.combo("showPanel");
opts.keyHandler.query.call(_96d, _85b.val(),e);
t.combo("validate");
// _67b(_96d, true);
}
},opts.delay);
});
/**end**/ 
其中各个变量的含义如下:
var _96e=t.data("combo");
var _96d=e.data.target;
var _85b = t.combo("textbox");//不能写成t.textbox
 
原理很简单,对combox的textbox父类添加bind事件。
 
 
===============================================================
顺便提一下在easyui 1.3.6版本中 jquery.easyui.min.js 11129行加入添加代码:
/******************/
_85b.bind("input",function(e){
if(_858.timer){
clearTimeout(_858.timer);
}
_858.timer=setTimeout(function(){
var q=_85b.val();
if(_858.previousValue!=q){
_858.previousValue=q;
$(_857).combo("showPanel");
opts.keyHandler.query.call(_857,_85b.val(),e);
$(_857).combo("validate");
}
},opts.delay);
/***********************/
 

jQuery EasyUI 1.4.4 Combobox无法检索中文输入的问题的更多相关文章

  1. jQuery EasyUI Combobox无法检索中文输入的问题

    在项目里使用了EasyUI的Combobox,当ComboBox的item是英文时,都能正常检索出对应项,但是如果使用中文输入法输入几个字母然后通过按shift键输入时,奇怪的事情发生了,combob ...

  2. jQuery EasyUI编辑DataGrid用combobox实现多级联动

    我在项目中设计课程表的时候需要用到老师和分类之间的多级联动. 首先是一张效果图: 下面是实现的代码: <body> <script type="text/javascrip ...

  3. EasyUI 1.3.2 中 Combobox自动检索 键盘上下选择Bug问题

    EasyUI 自带的Combobox控件,提供了下拉列值自动检索功能. 在用到的EasyUI 1.3.2版本中还是有点问题,在键盘上下键移动选择过程中只能定位在第一个,不能正常向下移动 问题解决方式: ...

  4. EASYUI 1.4版 combobox firefox 下不支持中文检索的问题

    easyui 的combobox 在IE下面输入中文,可以自动实现筛选和检索的功能,但是在firefox下面不可以. 于是查了一些资料,发现原来是浏览器对于中文输入法的处理问题,对于chrome 和 ...

  5. 第二百二十三节,jQuery EasyUI,ComboBox(下拉列表框)组件

    jQuery EasyUI,ComboBox(下拉列表框)组件,可以远程加载数据的下拉列表组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 C ...

  6. jquery easyui combobox 级联及触发事件,combobox级联

    jquery easyui combobox 级联及触发事件,combobox级联 >>>>>>>>>>>>>>&g ...

  7. jquery easyui combobox学习

    今天尝试了一下jquery easy ui的combobox,感觉蛮好用的,直接上代码吧 HTML如下 <div> <input id="btnBind" typ ...

  8. JQuery EasyUI Combobox的onChange事件

    html中的select 的change事件 <select id="consult_province" name="consult_province" ...

  9. jquery easyUI中combobox的使用总结

    jquery easyUI中combobox的使用总结 一.如何让jquery-easyui的combobox像select那样不可编辑?为combobox添加editable属性 设置为false ...

随机推荐

  1. UIApplication和delegate

  2. Git 版本控制工具(学习笔记)

    GIT(分布式) 一.Git 初始版本控制工具 1. 安装Git Ubuntu系统下,打开shell界面,输入: sudo apt-get install git-core  之后回车输入密码,即可完 ...

  3. 简单总结一下NotificationCenter、KVC、KVO、Delegate

    将最近总结的最常用的几种设计模式优势与区别自己小结一下,分享给大家. kvo只能用来对属性作出反应,而不会用来对方法或者动作作出反应,是实现一个对象与另外一个对象保持同步的一种方法,能够提供观察的属性 ...

  4. 课程助理For Windows(预览版,正方教务系统学生查分工具)

    其实盖子已经开发了一个功能更强大的版本,但是那个版本依然基于正方系统,也就是说只要正方系统跪了或者张院士在网站上做点手脚,这个小工具就会失效. 今天给大家的版本虽然功能及其简单.界面极端丑陋,但是通过 ...

  5. 子窗体与父窗体传值操作的js示例

    //返回值给父窗体 function returnParent(value) {//获取子窗体返回值    var parent = window.dialogArguments; //获取父页面   ...

  6. 【转】国内较快的maven镜像

    国内连接maven官方的仓库更新依赖库,网速一般很慢,收集一些国内快速的maven仓库镜像以备用. ====================国内OSChina提供的镜像,非常不错=========== ...

  7. 【iOS-Android开发对照】 之 APP入口

    [iOS-Android开发对照]之 APP入口 [图片 Android vs iOS] 提纲 对照分析iOS,Android的入口, iOS,Android的界面单元 为什么要有那样的生命周期 继承 ...

  8. 在Delphi中实现HexToStr函数和StrToHex函数

    function TransChar(AChar: Char): Integer; begin '] then Result := Ord(AChar) - Ord(') else Result := ...

  9. [D3] 3. Scaling Basics

    d3.scale.linear() <!DOCTYPE html> <html> <head lang="en"> <meta chars ...

  10. mysql 交互式连接和非交互式连接

    交互式客户端定义为在mysql_real_connect()中使用CLIENT_INTERACTIVE选项的客户端 mysql_real_connect() 函数介绍 函数原型描述: MYSQL *m ...