zoukankan      html  css  js  c++  java
  • 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);
    }
    });
    }
    }
    }

  • 相关阅读:
    Java实现分页
    研发技能列表
    shell 函数
    养生
    再谈创新
    写代码注意事项
    排查问题方法
    简历撰写
    jenkins
    架构
  • 原文地址:https://www.cnblogs.com/hqyj/p/7150451.html
Copyright © 2011-2022 走看看