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

easyui 的combobox 在IE下面输入中文,可以自动实现筛选和检索的功能,但是在firefox下面不可以。 于是查了一些资料,发现原来是浏览器对于中文输入法的处理问题,对于chrome 和 IE 他们会响应输入法最后输入中文时的keydown事件,也就是说如果你输入"调" 这个字,如果用的拼音输入法,你按下 diao 四个字符的时候,IE不会处理keydown事件,只有当"调"这个字进入到输入框中的时候,才会触发keydown 从而触发combobox的检索。 而Firefox 会响应每一个字符的keydown事件,也就是按下 d i  a o 四个键的时候各触发一次keydown事件,而选择中文字符的时刻,却只触发keyup事件,而不触发keydown事件。 而combobox的过滤事件恰恰只绑定了keydown  所以导致了在firefox中中文输入无法检索的问题。

解决方法如下: 在easyui 1.4 版本的jquery.easyui.min.js 中搜索如下代码:

$.fn.combo.defaults=$.extend({},$.fn.textbox.defaults,{inputEvents:{click:_952,keydown:_956,paste:_956,drop:_956},panelWidth:null,panelHeight:200,panelMinWidth:null,panelMaxWidth:null,panelMinHeight:null,panelMaxHeight:null,panelAlign:"left",multiple:false,selectOnNavigation:true,separator:",",hasDownArrow:true,delay:200,keyHandler:{up:function(e){
},down:function(e){
},left:function(e){
},right:function(e){
},enter:function(e){
},query:function(q,e){
}},onShowPanel:function(){
},onHidePanel:function(){
},onChange:function(_983,_984){
}});
})(jQuery);

将其中的keydown 改为keyup  修改后为keyup:_956  即可解决问题。

如果不适用mini版的话,可以修改plugin  下面的jquery.combo.js  修改的部分和上面一致。

转自:http://blog.csdn.net/oarsman/article/details/51082958

时间: 2024-12-12 19:07:58

EASYUI 1.4版 combobox firefox 下不支持中文检索的问题的相关文章

EASYUI combobox firefox 下不支持中文检索

firefox 中文录入因为输入法的问题,无法出发检索的事件.网上的方法试过还是没有解决. 于是使用录入时新增一个模拟键shift,触发keydown事件,最终实现需要的效果. $("input[id^='_easyui_textbox']").bind('input', function(){ if($("input[id^='_easyui_textbox']").val().length>1) { var evtObj = document.create

类似baidu搜索 修正jquery的autocomplete在firefox下不支持中文输入法的bug

解决方法: 转自 =============================================================== http://blog.csdn.net/happymagic/article/details/8775123 =============================================================== jQuery.Autocomplete 是jquery的流行插件,能够很好的实现输入框的自动完成(autocomp

修正jquery的autocomplete在firefox下不支持中文输入法提交的bug

只要在jquery.autocomplete.js的213的分号后加上一下代码 .bind("input", function() { // @hack by liqt:support for inputing chinese characters in firefox onChange(0, true); }) 如果你在reult时间中绑定了事件,又希望复制过来的内容也能够触发你的事件,可以加上如下的代码,这样就能保证用户不单击选项也能触发你的result事件

解决cocos2dx在VS2012中文版环境下不支持中文的问题

首先要明确的一点是:cocos2dx是支持中文的.因为其编码格式为UTF-8(无签名)——这只是我在网上找到的结论,并非从官方获取,因此不能十分确定,不过应该无误. 那么,为什么在VS2012环境下,cocos2dx不能正确显示中文呢? 这是因为二者编码格式不一致.VS2012中文版的默认编码格式为GB2312-80(我不确定英文版的格式如何,总之应该不是UTF-8).在GB2312-80编码格式中,一个中文占2个字节,而在UTF-8格式中,一个中文占3个字节.这就势必会出现乱码. 找到了原因,

easyui combobox 本地数据实现输入中文拼音简码过滤数据

<pre name="code" class="html"><input class="easyui-combobox" name="language" data-options=" data: baseData.emp.ck, width: 105, height: 26, valueField: 'id', textField: 'text', inputCode: 'inputCode', /

easyui日期在未加载easyui-lang-zh_CN.js出现英文的情况下加载中文的方法

我们有时候在操作easyui的时候本来是加载了easyui-lang-zh_CN.js中文文件包,但是还是出现了英文.使得我们不得埋怨这框架咋这么不好用,其实我们仔细看看这个中文包就会发现里面很多都是重新修改了定义语言的参数.假如我们用jquery初始化加载方法$(function(){//这里是我们自定义的操作方法});这个方法里面的东西执行后发现更本没加载我们的中文下面是我写的datetimebox日期控件js代码: $(function () { function adddaytimes(

FontAwesome在Firefox下建立静态页面不显示的情况

1.在相对路径时发现firefox的问题(但是在Chrome下没有问题),还需进一步确认. 最开始是直接把FontAwesome的less直接替换掉Bootstrap的glyphicons字体,编译后在firefox下一直是不显示,经过单独引用FontAwesome的css及font才发现如果换成第14行的路径写法是可以正常显示的,如图: 2.情景描述 以往做静态页面原型的文件的文件结构是这样的: folder |----css |----images |----js index.html ..

xmlHttpRequest在Firefox下不起作用?

描述: xmlHttpRequest 在IE下正常,在Firefox下不起作用. 原因: xmlHttpRequest 对象的 onreadychange 不会在Firefox下执行, 解放方法: 使用 jQuery 实现 AJAX 去代替 xmlHttpRequest.

windows7旗舰版64位下安装、破解及运行QTP11报错

说明:如果你出现了以下几种情况,希望能解决你的问题:如果没有,就当路过. 1.安装qtp11时报vc++ 2005缺少,但怎么也不能成功安装 解决方法: 1.找到qtp安装包里面的vc++ 2005组件 QuickTest\CHS\prerequisites\vc2005_sp1_redist. 2.运行vcredist_x86.exe文件,如果安装失败,修改后缀名为压缩文件,如:zip.rar,解压文件后重新运行解压后的文件. 2.网上介绍用mgn-mqt82.exe的方法破解qtp11失败