easyUI Combobox自定義調整支持中文模糊查詢



1、調整Combobox支持模糊查詢,並支持從任意位置開始匹配

  解決方案:將字符串的indexof匹配由原來的判定為頭部匹配,改為包含匹配

  return row[opts.textField].toLowerCase().indexOf(q.toLowerCase())==0;

  修改為 return row[opts.textField].toLowerCase().indexOf(q.toLowerCase())>-1;

  我用的是eaysUI 1.4版本,修改代碼在 jquery.easyui.min.js 中大概 12140 行左右。


2、調整Combobox,以支持搜索時中文輸入結束不自動觸發查詢

 解決方案:將觸發查詢執行的引起事件由keydown改成 keyup

$.fn.combo.defaults=$.extend({},$.fn.textbox.defaults,{inputEvents:{click:_8a2,keydown:_8a6,paste:_8a6,drop:_8a6},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(_8d6,_8d7){
}});

修改為

$.fn.combo.defaults=$.extend({},$.fn.textbox.defaults,{inputEvents:{click:_8a2,keyup:_8a6,paste:_8a6,drop:_8a6},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(_8d6,_8d7){
}});

  我用的是eaysUI 1.4版本,修改代碼在 jquery.easyui.min.js 中大概 11723 行左右。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM