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中你可以做任何你想做的事情,当时觉得不以为然,今天遇到个问题,就是页面重新加载后总是回到页面的顶部,如果客户只想看到他想看到的部分是怎么变化的,这个体验就好了.原本想象 ...
随机推荐
- ESP8266入门学习笔记1:资料获取
乐鑫官网:https://www.espressif.com/zh-hans/products/hardware/esp8266ex/overview 乐鑫资料:https://www.espress ...
- LeetCode(152) Maximum Product Subarray
题目 Find the contiguous subarray within an array (containing at least one number) which has the large ...
- FIFO buffer 和普通buffer区别
1.FIFO可以说一块具体的硬件存储设备,也可以说程序在内存中开辟的一段内存区域.而buffer往往就是一段缓冲的数据区域 2.FIFO的数据是先进先出的,而buffer没有这个限制,可以全局访问 3 ...
- 通过IAR工程文件查看对应IAR版本号
IAR使用技巧——如何使用合适的版本打开IAR工程 2014年07月05日 23:49:08 xukai871105 阅读数:12895 标签: IAR 更多 个人分类: 嵌入式ARM 0.前言 ...
- Wannafly挑战赛21 机器人
从前在月球上有一个机器人.月球可以看作一个 n*m 的网格图,每个格子有三种可能:空地,障碍,机器人(有且仅有一个),现在地面指挥中心想让机器人在月球上行走,每次可以发送一个指令,为 U-往上走.D- ...
- 【草稿】JS中如何操作时间
如何声明时间变量 如何设置时间变量的时.分.秒.毫秒 如何根据字符串变量,声明指定的时间变量 如何比较两个时间变量 代码如下: $(function () { var d = new Date(); ...
- debian7安装icedove
stable --icedove --esr $ cat /etc/apt/sources.list | grep "deb http://security.debian.org/ whee ...
- [git 学习篇] 修改文件
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743858312764d ...
- Docker网络基础:快速指南
Docker网络基础:快速指南 原文连接:http://blogxinxiucan.sh1.newtouch.com/2017/07/30/Docker网络基础:快速指南/ 了解有关扩展网络功能的默认 ...
- 设计模式(五)原型模式 Prototype
原型模式: 原型模式,是指基于一个已经给定的对象,通过拷贝的方式,创建一个新的对象,这个给定对象,就是“原型”. 在 Java 中,原型模式体现为 Object 的 clone() 方法. 所有类都可 ...