使用ajax响应json重新加载groupingStore - Ext.getCmp('theID').getStore().reload() - 不起作用

发布于 2024-10-03 13:44:13 字数 873 浏览 1 评论 0原文

你好 所以我有一个带有 GroupingStore 的 ext.GridPanel。该面板用于显示搜索结果。当页面加载时它是空的 - 正确。当用户输入搜索条件并返回有效的 json 时,面板应重新加载。我测试了一切,一切都有效,直到重新加载位 - 这没有任何作用。有什么想法吗?我已经坐了有一段时间了。

谢谢大家!

//global var defined....
Ext.grid.dummyData = [];
//this within Ext.onReady(function() {
var sstore = new Ext.data.GroupingStore({
    reader: sreader,
    autoLoad: false,
    data: Ext.grid.dummyData,
    sortInfo: { field: 'company', direction: "ASC" },
    groupField: 'scheme'
});

var sgrid = new sg.GridPanel({
    id:'srchGrid',
    store: sstore,
    ...

function searchNowBtn(id, txt, win) {
    Ext.Ajax.request({
        url: 'action.aspx',
        params: "...",
        success: function(r) {
            Ext.grid.dummyData = [['dummy1', '', '', '', ''],['dummy2', '', '', '', '']];
            Ext.getCmp('srchGrid').getStore().reload();
        }
    });
};

Hello
So i have an ext.GridPanel with a GroupingStore. This panel is meant to display search results. When the page loads it is empty - correct. The panel should reload when the user enters search criteria and returns with valid json. I tested everything and it all works until the reload bit - which doesnt do anything. Any ideas out there? I've been sitting with this for a while.

Thanks all!

//global var defined....
Ext.grid.dummyData = [];
//this within Ext.onReady(function() {
var sstore = new Ext.data.GroupingStore({
    reader: sreader,
    autoLoad: false,
    data: Ext.grid.dummyData,
    sortInfo: { field: 'company', direction: "ASC" },
    groupField: 'scheme'
});

var sgrid = new sg.GridPanel({
    id:'srchGrid',
    store: sstore,
    ...

function searchNowBtn(id, txt, win) {
    Ext.Ajax.request({
        url: 'action.aspx',
        params: "...",
        success: function(r) {
            Ext.grid.dummyData = [['dummy1', '', '', '', ''],['dummy2', '', '', '', '']];
            Ext.getCmp('srchGrid').getStore().reload();
        }
    });
};

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一瞬间的火花 2024-10-10 13:44:14

更简单的方法

sstore.reload();

Easier way

sstore.reload();

云之铃。 2024-10-10 13:44:13

好的,设法解决了。对于其他面临类似情况的人,请参阅下面的解决方案:

替换

 Ext.getCmp('srchGrid').getStore().reload();

 Ext.getCmp('srchGrid').getStore().loadData(Ext.grid.dummyData);

easy peezy :)

高兴!

ok managed to sort it out. See the solution below for anyone else facing similar situation:

replace

 Ext.getCmp('srchGrid').getStore().reload();

with

 Ext.getCmp('srchGrid').getStore().loadData(Ext.grid.dummyData);

easy peezy :)

njoy!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文