【问题标题】:Dynamically changing text color of text field动态改变文本字段的文本颜色
【发布时间】:2013-01-23 19:16:59
【问题描述】:

团队,

我面临一个问题,我无法更改 xtype:textfield 的文本颜色。我正在使用 EXTJS 3.4

要求最初以灰色显示默认文本,例如“在此处填写您的详细信息”。

但是当用户关注该字段时,我将删除默认文本,以便用户可以输入适当的值。

当用户输入一些值时,我想将文本的颜色从灰色更改为黑色。有什么方法可以用 ExtJS 3.4 做到这一点

【问题讨论】:

    标签: extjs extjs3


    【解决方案1】:

    您应该可以使用 emptyText 配置。 http://docs.sencha.com/ext-js/3-4/#!/api/Ext.form.TextField-cfg-emptyText。它最初显示为灰色,当用户输入一个值时它会清除并且输入的文本是黑色的。

    new Ext.form.TextField({renderTo: Ext.getBody(), emptyText: 'Fill Details Here'})
    

    【讨论】:

    • 我相信 emptyText 默认显示为灰色。请注意:如果字段有名称,则 emptyText 的值将与表单一起提交。
    • @Derek 是的,这就是链接文档中所说的。在 4 中,这看起来可以通过 form basic 上的 submitEmptyText 配置来处理。
    【解决方案2】:

    为什么不能用

    new Ext.form.TextField({renderTo: Ext.getBody(), id:'textId', emptyText: 'Fill Details Here'})
    

    并在提交时检查是否为空并清空两者并进行验证。

    Ext.Button({
    text:'title',
    handler:function(btn,optn){
    var value = Ext.getCmp('textId').getValue(); 
    

    // 这里 .getValue() 删除未定义和空文本并给出为 ''

    if(value === ''){
       Ext.msg.alert('Validation', 'Please fill all the mandatory fields');
    }
    }
    

    });

    【讨论】:

      猜你喜欢
      • 2020-01-10
      • 1970-01-01
      • 1970-01-01
      • 2019-09-10
      • 1970-01-01
      • 2014-06-20
      • 1970-01-01
      • 2010-12-19
      • 2019-11-05
      相关资源
      最近更新 更多