动态改变文本字段的文本颜色
Posted
技术标签:
【中文标题】动态改变文本字段的文本颜色【英文标题】:Dynamically changing text color of text field 【发布时间】:2013-01-23 19:16:59 【问题描述】:团队,
我面临一个问题,我无法更改 xtype:textfield 的文本颜色。我正在使用 EXTJS 3.4
要求最初以灰色显示默认文本,例如“在此处填写您的详细信息”。
但是当用户关注该字段时,我将删除默认文本,以便用户可以输入适当的值。
当用户输入一些值时,我想将文本的颜色从灰色更改为黑色。有什么方法可以用 ExtJS 3.4 做到这一点
【问题讨论】:
【参考方案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');
);
【讨论】:
以上是关于动态改变文本字段的文本颜色的主要内容,如果未能解决你的问题,请参考以下文章