【问题标题】:Add Delete button extjs grid添加删除按钮 extjs 网格
【发布时间】:2015-07-24 11:47:22
【问题描述】:

我有一个网格面板,我希望在其中为每一行添加一个删除按钮。当用户单击按钮时,该行将被删除。我还想在底部有一个保存按钮,它可以帮助用户在网格中添加一行。问题是我正在动态添加行。因此,对于每一行,删除图标也应该像这样添加。

我的要求只是 2 列。一个显示名称,另一个显示删除图标。

请告诉我如何动态地将图标添加到每一行。我已经有一个 CSS,它是这样的:

.icon-delete {
    background-image: url(../images/delete.png) !important;
}

此 CSS 位于不同的文件中。我是 extjs 新手,所以我对这些功能没有太多经验。

编辑:

我尝试了以下方法,但没有显示图标。请告诉我我哪里错了。

columns : [{
    text : 'Name', 
    dataIndex : 'name', 
    width : '50%'
},
{
    xtype : 'actioncolumn',
    draggable : false,
    hideable : false,
    menuDisabled : true,
    width:'50%',
    items : [{
        iconCls: 'icon-delete',
        tooltip: 'Delete',
        scope: this,                   
    }]
}]

【问题讨论】:

    标签: css extjs icons gridpanel


    【解决方案1】:

    您应该使用Ext.grid.column.Action 类,如下所示:

    {
        xtype:'actioncolumn',
        width:20,
        items: [{
            iconCls: 'icon-delete',
            tooltip: 'Delete',
            handler: function(grid, rowIndex, colIndex) {
                grid.getStore().removeAt(rowIndex);
            },
            scope: this
        }]
    }
    

    课程文档:http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.grid.column.Action

    【讨论】:

    • 但是当我添加一行时,如何添加此列值?就像我在做 Ext.getCmp('gridId').getStore().add({'name' : 'test});用于添加一行。如何将图标也添加到该行?另外,根据我的 css 的 'icon' 字段应该是 'icon-delete' 对吗?
    • actioncolumn 的概念是将按钮添加到存储中的每一行数据旁边。至于 CSS,我的错,我会编辑我的帖子,因为我忘了让它适应你的 CSS
    • 非常感谢您的帮助。我现在很清楚'actioncolumn'的概念。但是图标仍然没有显示。你能看看更新的帖子吗?
    • 我认为您需要像我之前在 icon 属性中所做的那样放置图像的路径。也许iconCls 还不够。我不确定,因为我总是使用没有 CSS 的图像
    • 我已经尝试过了,但遗憾的是这也不起作用。问题是没有错误,所以我无法理解问题的原因。
    猜你喜欢
    • 2014-09-25
    • 1970-01-01
    • 2019-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-26
    • 1970-01-01
    相关资源
    最近更新 更多