如何在不重新加载的情况下刷新 ExtJS 网格中的数据
How to refresh the data in an ExtJS Grid without reloading
如何在不刷新页面的情况下更新extjs中的网格数据?请给我一个完整的工作代码我是 extjs 的新手。这是我的代码
Ext.Ajax.request({
url: 'register.cfm',
method:'POST',
params : { data : JSON.stringify(form.getValues()) },
dataType: "json",
success: function(response){
win.hide();
//var str = JSON.stringify(response.responseText);
var obj = JSON.parse(response.responseText);
if (obj==1) {
var values = form.getFieldValues ();
store.add(form.getFieldValues())
} else {
(here i need to show updated values in the grid without refresh)
}
},
failure : function(response){}
}); // eof ajax
因为你甚至 post 你的网格名称我不能提供给你
Ext.getCmp('yourGridId').getView().refresh();
应该在
之后调用
store.add(form.getFieldValues())
(你错过了 ;
吗?)
See this question for more details
我认为这里的问题是您手动尝试通过 ajax 更新商店。
商店应预先配置为与您的端点一起使用并能够自行更新。如果您使用的是 ExtJS 4+,则可以使用 Store Documentation.
中所示的商店过滤器
如果您使用的是 ExtJs 3,那么您应该更新商店中的参数并让它处理记录的请求和更新。
例如(代码未完全测试,可能需要一些细微的改动):
Ext.getCmp('myGrid').getStore().load({
params: {
data: JSON.stringify(form.getValues())
}
});
如何在不刷新页面的情况下更新extjs中的网格数据?请给我一个完整的工作代码我是 extjs 的新手。这是我的代码
Ext.Ajax.request({
url: 'register.cfm',
method:'POST',
params : { data : JSON.stringify(form.getValues()) },
dataType: "json",
success: function(response){
win.hide();
//var str = JSON.stringify(response.responseText);
var obj = JSON.parse(response.responseText);
if (obj==1) {
var values = form.getFieldValues ();
store.add(form.getFieldValues())
} else {
(here i need to show updated values in the grid without refresh)
}
},
failure : function(response){}
}); // eof ajax
因为你甚至 post 你的网格名称我不能提供给你
Ext.getCmp('yourGridId').getView().refresh();
应该在
之后调用store.add(form.getFieldValues())
(你错过了 ;
吗?)
See this question for more details
我认为这里的问题是您手动尝试通过 ajax 更新商店。
商店应预先配置为与您的端点一起使用并能够自行更新。如果您使用的是 ExtJS 4+,则可以使用 Store Documentation.
中所示的商店过滤器如果您使用的是 ExtJs 3,那么您应该更新商店中的参数并让它处理记录的请求和更新。
例如(代码未完全测试,可能需要一些细微的改动):
Ext.getCmp('myGrid').getStore().load({
params: {
data: JSON.stringify(form.getValues())
}
});