【问题标题】:ExtJS Grid Row Specific EmptyText?ExtJS Grid Row 特定的 EmptyText?
【发布时间】:2014-02-28 13:52:25
【问题描述】:

我们的应用程序使用Ext.grid.Panel 来显示数据行。当用户单击“新建...”按钮时,我们正在向网格存储添加一条新记录。一切正常。

但是,在某些字段中,仅在这些新的(迄今为止)未同步的记录中,我们希望在某些单元格中显示特定的空文本。例如:“在此处输入标题”或“选择平台”。

我知道 Column 上有一个 emptyCellText 属性,但是 a)its broken 和 b)我希望仅在新的、未同步的(例如幻像)记录上发生这种情况。

由于我是这个框架的新手,欢迎提出任何想法。

【问题讨论】:

    标签: javascript extjs grid extjs4.2


    【解决方案1】:

    您可以在renderer 列中添加此文本。您可以测试记录列值是否未设置并且记录是否为幻像。在这种情况下,您可以将占位符文本添加到列中:

    columns: [
        {
            header: 'Name',  
            dataIndex: 'name', 
            editor: {
                xtype: 'textfield',
                emptyText: 'Enter name'                
            },
            renderer: function(value, metaData, record) {
                if (!value && record.phantom) {
                    return 'Enter name';
                } else {
                    return value;
                }
            }
        }
    ]
    

    编辑

    要在编辑器字段中也显示空文本,只需在编辑器配置中使用emptyText config 属性。在编辑器配置中,您可以通过xtype 定义将使用哪种类型的字段(textfieldnumberfield 等)并添加任何字段配置属性:

    editor: {
        xtype: 'textfield',
        emptyText: 'Enter name',
        // other filed config properties...        
    },
    

    摆弄现场示例:https://fiddle.sencha.com/#fiddle/3b5

    【讨论】:

    • 太棒了——希望我能给小提琴加分!后续问题......以及是否可以在行编辑控件中设置相同的emptyText,以便它们不会在您单击时消失?
    • 哇 - 我认为我的公司需要解雇我并雇用你。
    • @HDave 你成就了我的一天 :)
    猜你喜欢
    • 1970-01-01
    • 2012-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-27
    • 2011-05-04
    相关资源
    最近更新 更多