1

在我的应用程序中,我必须添加搜索字段和一些选择字段。当我在搜索字段中添加任何字符时,应显示来自商店的相应内容。目前我正在使用我正在处理keyup事件的搜索字段。请让我知道执行此操作的流程和指导方针。谢谢

4

1 回答 1

0

我想您想要搜索字段的搜索功能..在您键入时显示结果。您可以通过使用正则表达式并将它们与商店中的条目进行比较来实现这一点。

这是我在一个项目中使用的代码:

      //referencing my searchfield
 Search: '#searchfield';
      //attaching an event
 Search: {
            keyup: "OnFocus"
         }
      //the actual function 
OnFocus: function (searchField, e) {
   var query = searchField.getValue(); //get the value entered in the search field
   var  ContactsContainer = this.getContactsContainer(); //the container that holds my contacts
   var store = Ext.getStore('Contacts'); // the store where I have the info
   store.clearFilter(); //assure there aren't any filters set

    if (query) {  //if the current value in the search field
       var thisRegEx = new RegExp(query, 'i'); //new regular expression with our value
       store.filterBy(function (record) {      //filter the store 
           if (thisRegEx.test(record.get('name')) //the fields in the store
               thisRegEx.test(record.get('surname'))
               thisRegEx.test(record.get('phone'))) {
               return true;  //must include this
           };


            return false;
       });
   }

祝你好运!

于 2013-08-29T11:07:10.407 回答