Extjs grid增加或删除列后记住滚动条的位置

IE下验证好使。
{
        text: "Del", icon: 'Scripts/Ext/resources/images/icons/application_form_delete.png',
        action: "Del",
        listeners: {
            click: function (btn) {
                var grid = btn.up("grid");
                var me = grid.getView();
                var scrollLeft = me.el.getScrollLeft();
                var columns = grid.columnManager.getColumns();
                var newColumn = 0;
                var filedsName = [];
                Ext.Array.each(columns, function (name, index, countriesItSelf) {
                    var dataIndex = name.dataIndex.replace(/CELL/g, '');
                    //取最大数字
                    if (Number(dataIndex) > newColumn) {
                        newColumn = dataIndex;
                    }
                    //收集所有name.dataIndex
                    if (name.dataIndex) {
                        Ext.Array.push(filedsName, name.dataIndex);
                    }
                });
                var columnCellName = 'COL' + newColumn.toString();
                var columnname = 'CELL' + newColumn.toString();
                var delArray = [];
                Ext.Array.push(delArray, columnCellName);
                Ext.Array.push(delArray, columnname);
                filedsName = Ext.Array.difference(filedsName, delArray);
                var records = grid.getStore().data.items;
                for (var i = 0; i < records.length; i++) {
                    delete records[i].data[columnCellName];
                    delete records[i].data[columnname];
                }
                var myStore = Ext.create('Ext.data.Store', {
                    data: records,
                    fields: filedsName
                });
                //myStore.on('load', function () {
                //    mergeCellsNew(grid, [1, 2], false);
                //});
                grid.reconfigure(myStore, buildColumn_numeric(filedsName));
                myStore.loadPage(1, {
                    callback: function (records, operation, success) {
                        mergeCellsNew(grid, [1], false);
                        resizeRowNumber(grid, 3);
                        me.el.setScrollLeft(scrollLeft);
                        //mergeCellsNew(grid, [2], false);
                        //resizeRowNumber(grid, 3);
                        //griddb.plugins[0].startEdit(myStore.data.items[1], 3);
                    }
                });
            }
        }
    }
Extjs grid增加或删除列后记住滚动条的位置的更多相关文章
- ASP.NET - 记住滚动条的位置
		MaintainScrollPositionOnPostback ="true" 如果是滚动条在最下面,那么如果刷新页面,滚动条回到最上面. 使用这个属性之后,滚动条会在刷新之前的 ... 
- Asp.net 在刷新或提交页面后保持滚动条的位置
		网页内容在较长时,每次回传刷新页面或提交网页时都会定位到最顶端,非常不利于用户交互. 将Page.MaintainScrollPositionOnPostBack属性值设置为true即可实现刷新后保持 ... 
- JTextPane或JTextPane设置了滚动条,文本增加后,滚动条自动下滑,追加文本的例子
		http://zhizaibide1987.iteye.com/blog/1012955 https://zhidao.baidu.com/question/2116908942184706107.h ... 
- extjs grid数据改变后刷新的实现
		做了一个编辑extjs grid记录的窗体,但更改数据后,怎么重新刷新grid让数据显示呢? 做了半天的尝试,其实到最后只需一句话,faint:-) this.store.reload(); 不用加任 ... 
- 解决extjs grid 不随窗口大小自适应的问题
		解决extjs grid 不随窗口大小自适应的问题 August 30, 2010 zhai Javascript 8,403 viewsGo to comment 最近遇到的问题,在使用grid的时 ... 
- ExtJS Grid导出excel文件
		ExtJS Grid导出excel文件, 需下载POI:链接:http://pan.baidu.com/s/1i3lkPhF 密码:rqbg 1.将Grid表格数据连同表格列名传到后台 2.后台导出e ... 
- mysql增加普通用户后无法登陆问题的解决方法
		解决方法: 增加普通用户后,执行: mysql> use mysql mysql> delete from user where user=''; mysql> flush priv ... 
- extjs grid renderer用法
		extjs grid renderer用法 摘自:http://www.cnblogs.com/ljian/archive/2011/10/27/2226959.html var cm = new E ... 
- javascript设置网页刷新或者重新加载后滚动条的位置不变
		有个同事说再javascript中你可以做任何你想做的事情,当时觉得不以为然,今天遇到个问题,就是页面重新加载后总是回到页面的顶部,如果客户只想看到他想看到的部分是怎么变化的,这个体验就好了.原本想象 ... 
随机推荐
- hashable与unhashable
			不可哈希(unhashable):就是指其可变,如列表.字典等,都能原地进行修改. 可哈希(hashable):不可变,如字符串.元组那样,不能原地修改. 利用set()和{}建立集合时,要求集合中的 ... 
- LeetCode(44) Wildcard Matching
			题目 Implement wildcard pattern matching with support for '?' and '*'. '?' Matches any single characte ... 
- nrf52810学习笔记——二
			nrf52810为nordic支持蓝牙 5.0性价比最高的一款芯片,不过这个芯片的rom不得不吐槽下,只有192KB,不知道为什么定了个192,而不是大家所熟悉的256KB,估计价格是个原因吧,15. ... 
- ACM-ICPC 2018 沈阳赛区网络预赛 F. Fantastic Graph(有源上下界最大流 模板)
			关于有源上下界最大流: https://blog.csdn.net/regina8023/article/details/45815023 #include<cstdio> #includ ... 
- mac常用软件,自用找了很久的分享一下相信很多人需要
			CleanMyMac 3.1.1.dmg比较好用的清理软件.破解版!http://pan.baidu.com/s/1i4mo7jvNTFS读写 Tuxera NTFS for Mac.rar也是破解的 ... 
- 如何在官网下载Spring jar包
			该链接里面讲的很仔细! http://blog.csdn.net/frankarmstrong/article/details/69808813 
- Python生成器、三元表达式、列表生成式、字典生成式、生成器表达式
			什么是生成器:只要函数内部包含有yield关键字,那么函数名()的到的结果(生成器地址)就是生成器,再调用函数不会执行函数内部代码这个生成器本身有 _iter_ he _next_功能(即生成器 ... 
- 九度oj 题目1171:C翻转
			题目描述: 首先输入一个5 * 5的数组,然后输入一行,这一行有四个数,前两个代表操作类型,后两个数x y代表需操作数据为以x y为左上角的那几个数据. 操作类型有四种: 1 2 表示:90度,顺时 ... 
- 【bzoj1778】[Usaco2010 Hol]Dotp 驱逐猪猡  矩阵乘法+概率dp+高斯消元
			题目描述 奶牛们建立了一个随机化的臭气炸弹来驱逐猪猡.猪猡的文明包含1到N (2 <= N <= 300)一共N个猪城.这些城市由M (1 <= M <= 44,850)条由两 ... 
- 【CF700B】Connecting Universities(贪心,树上最短路)
			题意:给出一棵树上的2*k个节点,给他们配对,使得他们之间的距离和最大. 思路:一条边的两侧如果有一侧没有给定的节点就不会被经过…… 如果有1个节点就会被经过1次…… 如果两侧分别有x,y个给定节点就 ... 
