1

私はEditorGridPanelデータセットを持っています。一部のセルの編集を無効にしたい (フィールド レコードの読み取り専用がデータベースであることを確認してくださいYES)。

私はその呼び出しをしgetSiteEditableました。セル編集を無効にしますが、セル A (読み取り専用セル) をクリックすると、その後セル B をcancelクリックしてダブルクリックすると、セル B の内容がセル A にコピーされます。

データ ストア:

siteStore = new Ext.data.JsonStore({
    idProperty: 'ROWI',
    root: 'data',
    autoLoad: true,
    mode: 'remote',
    url: WOERP.getURL("portals", "sm", "grid", "grid=portal_sm_configui_site_tab_grid&action=get"),
    keys: ['CONFIG_TYPE'],
    fields: [
        'ROWI',
        'CONFIG_VALUE',
        'CONFIG_DESC',
        'CONFIG_TYPE',
        'SHORT_DESC',
        'IS_READ_ONLY',
        'ROWDATE']
});

this.gridSiteData = Ext.ux.grid.woerp.getWoerpGrid(this.gridSiteData, siteStore);
siteRowEditor = Ext.getCmp('portal_sm_configui_site_tab_grid_roweditor');
siteRowEditor.on('beforeedit', this.getSiteEditable, this);

setSiteEditable 関数

getSiteEditable: function (roweditor, rowIndex) {
    if (!roweditor.initialized) {
        roweditor.initFields();
    }

    var fields = roweditor.items.items;

    var rec = this.gridSiteData.store.getAt(rowIndex);
    var isReadOnly = rec.data.IS_READ_ONLY;

    if (isReadOnly == 'YES') {
        Ext.each(fields, function (field, i) {
            if (field.name == 'CONFIG_VALUE') field.setDisabled(true);
        });
    } else Ext.each(fields, function (field, i) {
        if (field.name == 'CONFIG_VALUE') field.setDisabled(false);
    });
}

上記のメソッドを呼び出すことで編集可能な機能を無効にすることができますが、データセルをクリックすると、データセルのコンテンツの下にコピーされ、クリックしたデータセルの上部に小さな赤いアイコンが表示されます。

データを別のセルにコピーする理由を知っている人はいますか?

ページの読み込み ページ読み込みビュー セル A ここに画像の説明を入力 をダブルクリック セル B をダブルクリックした後 (セル B の内容をセル A にコピー) ここに画像の説明を入力

セルをダブルクリックした後

4

0 に答える 0