2 y393791327 y393791327 于 2015.07.21 14:32 提问

extjs4 动态更新store里的数据
 items : [{ 
            id:'home',
            title : "Home Page",
            iconCls: 'House',
            html : '<iframe src= "jsp/homepage.jsp" id="home" width="100%" height="100%" marginwidth="0" framespacing="0" marginheight="0" frameborder="0" ></iframe>',
            listeners:{                   // 添加监听器,点击此页面的tab时候要重新加载(刷新功能)  
                 activate:function(){  

                 }  
                 }

        }]

图片说明
如图所示homepage有个待办事项,点击链接可以进行操作。假如待办里的第一条记录被close了。home页面的待办应该少一条记录。我试过刷新整个页面发现不是很好。效率很低。store.load()不知怎么调用其他页面的store。如你们所看到的<iframe src= "jsp/homepage.jsp"这里是jsp页面所以store不在本js中。就不知道怎么调用了

3个回答

showbo
showbo   Ds   Rxr 2015.07.21 15:06
已采纳

给你iframe加载的页面的grid增加id配置,然后点击grid连接的时候用一个全局变量记录这个记录的唯一id


var win=top.document.getElementById('home').contentWindow;//得到iframe的window作用域
var grid=Ext.getCmp('grid的id');
var store=grid.getStore();//得到grid的store
var rec=store.getById(点击的记录的id);
store.remove(rec);//移除记录
showbo
showbo 回复y393791327: 方法就是API里面的,自己好好看。机器人发的也可以看
2 年多之前 回复
y393791327
y393791327 有这种例子就直接给我个吧!一天一个问题我也都不好意思了。就是这种关于动态新增删除做到时时更新的。像我图片上的一样的demo
2 年多之前 回复
y393791327
y393791327 store不能时时更新,我新建了一条数据不刷新它也就不显示
2 年多之前 回复
showbo
showbo 回复y393791327: 直接更新就好,干嘛要重新加载store呢?要是你打开其他tab,没有做操作更新任何数据你执行store更新不是浪费了,而且就算有更新,你需要从服务器端从新加载数据也是浪费资源啊。直接操作客户端的额数据就好了
2 年多之前 回复
y393791327
y393791327 用tab的监听activate:function(){}事件重新加载store不是更方便?
2 年多之前 回复
showbo
showbo var grid=Ext.getCmp('grid的id');这句改下,应该是var grid=win.Ext.getCmp('grid的id');
2 年多之前 回复
CSDNXIAON
CSDNXIAON   2015.07.21 14:36

Extjs4之Store动态添加数据
extjs4 grid 动态插入数据行
extjs4中的store
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

caozhy
caozhy   Ds   Rxr 2015.07.21 14:59
Csdn user default icon
上传中...
上传图片
插入图片