Extjs 3 (Grid Filter) - PullRequest
       1

Extjs 3 (Grid Filter)

0 голосов
/ 14 декабря 2011
fbar :[{
                    xtype       : 'datefield',
                    id          : 'date_s',
                    allowBlank  : true,
                    emptyText   : 'Choose date',
                    name        : 'deadline',
                    width       : 120,
                    editable    : false,
                },{
                    xtype       : 'button',
                    text        : 'Go!',
                    handler     : function () {
                     /*f.load({
                        params : {
                            start : 0,
                            limit : 2,
                            t : ''
                        }
                    });*/

                    var clear = f.clearFilter();
                    var searchValueDate1 = Ext.getCmp("date_s").getValue(); 
                    var date1 = searchValueDate1.format('Y-m-d); // 00:00:00');

                    //alert(date1);

                    //clear;
                    f.load().filter("question[deadline]", date1);

                    }
                }]

Я создал поле со списком, в котором я могу выбрать любую дату, а затем, когда я нажимаю кнопку -> она показывает только строки с этой датой и датой окончания) ВОПРОС: Я думаю, что написал все правильно, но не работает! В чем основная проблема?

Ответы [ 2 ]

0 голосов
/ 15 декабря 2011

Обработчик получает кнопку и объект события, переданные ему. Поэтому обработчик должен выглядеть так:

handler     : function (b,e) {

var theGrid = Ext.getCmp('gridId'); //You need to get the grid to filter
var theStore = theGrid.store; //Get the grid store you need it to filter

var searchValueDate1 = Ext.getCmp("date_s").getValue(); 
var date1 = searchValueDate1.format('Y-m-d); // 00:00:00');


//Filter by filters each record if true it keeps it if false it filters it out
theGrid.filterBy(function(rec){

if(rec.get('dateField') == date1 ){
  return true
}else{
 return false;
}
});

}

Это основная идея, что копирование и вставка этого не сработают, это означало больше как руководство.

0 голосов
/ 14 декабря 2011

Что вы подразумеваете под не работает?У вас есть ошибка?

В ExtJs 3 фильтр является виджетом, который позволяет вам иметь визуальную функцию для выбора даты, затем он запускает событие (загрузка), которое вы должны перехватить, если вам нужноизменить данные до того, как контроллер выполнит фильтрацию (в asp / php)

Что-то хорошее - дать нам полный тестовый код, чтобы просто пропустить его в нашей среде

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...