Ext store.reload()之后,无法获取最新的数据?
在新增一条数据成功后,store.reload(),调试发现store的确是重新加载了,可是问题出现了,请高手指点一二,基本代码如下:
- JScript code
//定义一个USERstorevar fields = ["user_no","user_id","user_name","lpwd","shop_no","shop_name","isadmin","lltime","available"]; var USERstore = new Ext.data.GroupingStore({ proxy:new Ext.data.HttpProxy( { url:"sys_user_info.aspx", method:"POST" }), reader:new Ext.data.JsonReader( { fields:fields, root:"data", id:"user_no", totalProperty:"totalCount" }), sortInfo:{field:'user_no',direction: "ASC"} }); //加载时参数 USERstore.load({params:{start:0,limit:pageSize}});//增加数据页面提交处理EditUserInfofp.form.submit({url:"user_edit.aspx,params:{dp_datas:jsonData},method:"POST",success:function(form,action){Ext.MessageBox.show({title: '恭喜',msg:'信息保存成功!',icon:Ext.MessageBox.INFO});//刷新数据集USERstore.reload();[b][color=#FF0000][size=12px]此处调试过USERstore,的确从后台已经重新加载,数据是最新的,可是引用USERstore,却发现还是之前的数据,而并非最新的数据,why???[/size][/color][/b]EditUserInfoWin.hide();},failure:function(form,action){Ext.MessageBox.show({title: '提示',msg:'保存信息失败!',icon:Ext.MessageBox.ERROR});}});
[解决办法]
前一个load需要在刷新一次吧?
[解决办法]
reload也是一个异步操作。
你在reload后面获取它的值不一定是最新的值
你要写在
store的load事件中
listeners:{
load:function(){
alert(store.getCount());
}
}