combobox输入中文而对应的hidden域的value值没有及时修改的问题

来源:互联网 发布:mac系统镜像下载 编辑:程序博客网 时间:2024/06/07 02:12

今天在做easyui的combobox时发现,可编辑状态开启,在Firefox和Chrome里面的反应不太一样,导致我在新增或修改数据时会出现错误。我用的easyui版本是1.4.3。Firebug时发现问题出现所在,在Firefox下,combobox的hidden域的value值,中文输入法输入时并没有跟着变,而当中文输入完毕之后value就没反应了,而英文输入法则会跟着变。在Chrome就没有出现此类问题。经过查阅资料是说浏览器对于中文输入法的处理问题。combobox的input事件inputEvents:{click:_952,keydown:_956,paste:_956,drop:_956},只绑定了keydown,没有绑定keyup。而选择中文字符的时刻,却只触发keyup事件,而不触发keydown事件。Firefox则会响应每次按下的keydown事件而不响应keyup事件。

解决方法如下:

$.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);

inputEvents:{click:_952,keydown:_956,paste:_956,drop:_956}
的keydown改成keyup既可以解决问题了。

参考连接:http://www.oschina.net/question/237688_69510?sort=time&p=1
0 0
原创粉丝点击