如果我的搜索文本字段为空,如何在实时搜索中将原始商店重新加载到网格

时间:2013-03-28 11:48:19

标签: extjs extjs4 extjs4.1 extjs-mvc

我使用Extjs完成了应用程序。我正在向用户显示网格记录,这里添加了livesearch的功能。通过在搜索字段的字段中输入一些文本,基于属性名称和值进行过滤非常好。但问题是,当搜索字段变为空/空白时,我从搜索字段中删除了文本,原始商店数据未在网格中填充。 如果搜索文本字段变空,我如何将原始商店数据填充到网格?欣赏。

我的代码在这里: incode newValue 是搜索文本字段值我正在检查是否还有其他部分。如果 newValue null表示需要加载原始商店,则会过滤存储并显示记录。我已经添加了以下代码来重新加载原始商店不起作用。

{
    xtype: 'textfield',
    name: 'searchField',
    hideLabel: true,
    width: 200,
    listeners: {
        change: {
            fn: this.onTextFieldChange,
            scope: this,
            buffer: 100
        }
    }
},

onTextFieldChange: function (field, newValue, oldValue, options) {
    if (newValue == '') {
        //grid.setStore(store);
        Ext.getCmp('grid').getStore().load();
        here grid is id of my Grid
        Ext.getCmp('grid').getView().refresh();
    } else {
        grid.store.load().filter([{
            id: 'name',
            property: "name",
            value: newValue,
            anyMatch: true
        }]);
    }
}

1 个答案:

答案 0 :(得分:1)

我已添加 grid.store.clearFilter(); 以在搜索文本字段为空时清除过滤器。工作正常。干杯:)