快捷搜索: 王者荣耀 脱发

Ext.net ComboBox模糊匹配store数据

前台代码:

<ext:ComboBox ID="cbVcode" runat="server" FieldLabel="申请车号<font color=red>*</font>" EmptyText="请输入申请车牌号"
                                                    AllowBlank="false" BlankText="申请车号不能为空" StoreID="StoreVcode" ValueField="VCode"
                                                    DisplayField="VCode"  ForceSelection="true" Mode="Local" >
                                                    <Triggers>
                                                        <ext:FieldTrigger Icon="Clear" HideTrigger="true" Qtip="清空内容" />
                                                    </Triggers>
                                                    <Listeners>
                                                        
                                                        <Select Handler="this.triggers[0].show();cbVcodeSelect();" />
                                                        <BeforeQuery Fn="comBoxValueSelect"/>
                                                        <TriggerClick Handler="if (index == 0) { this.clearValue(); this.triggers[0].hide(); #{cbOilInfo}.clearValue();#{txtDriver}.reset();}" />
                                                        
                                                    </Listeners>
                                                </ext:ComboBox>


js代码:

///ComboBox 模糊匹配store数据
 var comboxCoun = 0;
 var comBoxValueSelect = function (e) {
     //e.triggers[0][e.getRawValue().toString().length == 0 ? hide : show]();

     var com = e.combo;
     //第一次输入一个值就绑定ComboBox
     if (comboxCoun == 0) {
         com.onLoad();
         comboxCoun = 1;
     }
     if (!e.forceAll) {
         var value = e.query;
         com.store.filterBy(function (record, id) {
             var text = record.get(com.displayField);
             return (text.indexOf(value) != -1);
         });
         //com.collapse();
         com.expand();
         return false;
     }
     if (com.getRawValue().length > 0) {
         com.triggers[0].show();
     }
     else {
         com.triggers[0].hide();
     }
     //用自己的过滤规则,如写正则式 return (text.indexOf(value)!=-1); }); combo.expand(); return false; } });
 }


经验分享 程序员 微信小程序 职场和发展