extjs checkcolumn触发afteredit事件

来源:互联网 发布:万达电商 淘宝的 编辑:程序博客网 时间:2024/06/05 02:38

在原文件CheckColumn.js的基础上做了修改,版本3.2.1

默认不会触发,需要触发的话加上fireafteredit : true,

修改了两处

fireafteredit = false || config.fireafteredit;if(fireafteredit) {var e = {record : record};this.grid.fireEvent('afteredit', e);}

修改后的文件

/*! * Ext JS Library 3.2.1 * Copyright(c) 2006-2010 Ext JS, Inc. * licensing@extjs.com * http://www.extjs.com/license */Ext.ns('Ext.ux.grid');/** * @class Ext.ux.grid.CheckColumn * @extends Object * GridPanel plugin to add a column with check boxes to a grid. * <p>Example usage:</p> * <pre><code>// create the columnvar checkColumn = new Ext.grid.CheckColumn({   header: 'Indoor?',   dataIndex: 'indoor',   id: 'check',   width: 55});// add the column to the column modelvar cm = new Ext.grid.ColumnModel([{       header: 'Foo',       ...    },    checkColumn]);// create the gridvar grid = new Ext.grid.EditorGridPanel({    ...    cm: cm,    plugins: [checkColumn], // include plugin    ...}); * </code></pre> * In addition to storing a Boolean value within the record data, this * class toggles a css class between <tt>'x-grid3-check-col'</tt> and * <tt>'x-grid3-check-col-on'</tt> to alter the background image used for * a column. */Ext.ux.grid.CheckColumn = function(config){fireafteredit = false || config.fireafteredit;    Ext.apply(this, config);    if(!this.id){        this.id = Ext.id();    }    this.renderer = this.renderer.createDelegate(this);};Ext.ux.grid.CheckColumn.prototype ={    init : function(grid){        this.grid = grid;        this.grid.on('render', function(){            var view = this.grid.getView();            view.mainBody.on('mousedown', this.onMouseDown, this);        }, this);    },    onMouseDown : function(e, t){        if(Ext.fly(t).hasClass(this.createId())){            e.stopEvent();            var index = this.grid.getView().findRowIndex(t);            var record = this.grid.store.getAt(index);            record.set(this.dataIndex, !record.data[this.dataIndex]);            if(fireafteredit) {            var e = {record : record};            this.grid.fireEvent('afteredit', e);            }        }    },    renderer : function(v, p, record){        p.css += ' x-grid3-check-col-td';         return String.format('<div class="x-grid3-check-col{0} {1}"> </div>', v ? '-on' : '', this.createId());    },        createId : function(){        return 'x-grid3-cc-' + this.id;    }};// register ptypeExt.preg('checkcolumn', Ext.ux.grid.CheckColumn);// backwards compatExt.grid.CheckColumn = Ext.ux.grid.CheckColumn;

原创粉丝点击