javascript - 无法获取网格存储过滤器

标签 javascript extjs

我有一个网格商店,看起来像这样:

Ext.create('Ext.data.BufferedStore', {
    fields: fields,
    autoLoad: true,
    leadingBufferZone: 300,
    pageSize: 100,
    proxy: {
        type: 'ajax',
        url: 'handler.php?action=getObjData&id_obj='+id_bj, 
        reader: {
            type: 'json',
            rootProperty: 'items',
            totalProperty: 'total'
        }
    },
    listeners: {
        load: function () {
            //this is what I tried
            console.log(this.proxy.extraParams);
            console.log(this.proxy.params);
            console.log(this.proxy.url);
            console.log(this.filters.filterData());
        }
   }

});

如您所见,在负载监听器中我尝试了多种解决方案。但所有这些都会导致 undefined{} 或初始 url,尽管我过滤数据,但我在控制台中看到,服务器请求变得如下所示:

handler.php?action=getObjData&filter=[{"operator":"gt","value":0,"property":"attr_88186_"}]...

所以,有一个过滤器参数,但我无法获取它。

最佳答案

您想从商店获取过滤器:

load: function (store) {
    var filters = store.getFilters().getRange()

关于javascript - 无法获取网格存储过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39973562/

相关文章:

ExtJS5:TreePanel 选择事件触发两次

extjs - 如何在ExtJS4.1模型中将时间戳转换为自定义日期格式?

javascript - 动态更新nivo slider 参数

javascript - 将鼠标悬停在链接上,切换 div 可见性,直到鼠标同时离开链接和 div

javascript - 获取仍在域中的最高帧

javascript - 如何过滤 EXTJS 网格列表过滤器?

javascript - 如何为 extJ 中的文本字段输入中的每封电子邮件制作不同的 div?

javascript - 无法访问所需文件中的变量

javascript - 连续样式映射 View react native

javascript - Sencha Touch 2 - 在 MVC 中添加监听器的正确方法?