我有一张表格.还有很多文本字段.我使用allowBlank属性不允许用户将字段留空并使用blankText来定义自定义的“空白错误”文本.
{
xtype: 'textfield',
fieldLabel: 'Surname',
name: 'person_surname',
allowBlank: false,
blankText: 'Please fill "Surname" field',
},
我的问题是:
有没有办法在同一个对象的另一个属性中使用Ext.form.field.Text的对象属性?
就像是:
{
xtype: 'textfield',
fieldLabel: 'Surname',
name: 'person_surname',
allowBlank: false,
blankText: 'Please fill "' + fieldLabel + '" field',
},
(不起作用)
要么:
{
xtype: 'textfield',
fieldLabel: 'Surname',
name: 'person_surname',
allowBlank: false,
blankText: 'Please fill "' + this.fieldLabel + '" field',
},
(也不起作用)
更新:
例如,在minLengthText属性中,我可以使用模板驱动的文本,例如“此字段的最小长度为{0}”,它采用同一对象的minLength属性值.
我再说一遍:我使用ExtJS的对象初始化方法,对象文字语法如:
{
xtype: 'textfield',
fieldLabel: 'Surname',
name: 'person_surname',
allowBlank: false,
blankText: 'Please fill "Surname" field',
},
这个语法非常简洁,在这里不欢迎使用其他语法.
最佳答案
如果您不想重写代码,请尝试将监听器添加到表单中
例
listeners : {
render : function(){
Ext.each(form.items.items,function(fld,idx){
if(fld.getXType()=='textfield'){
fld.blankText = fld.fieldLabel;
}
});
}
}
相关文章
转载注明原文:javascript – 如何在初始化期间引用同一对象内的对象字段? - 代码日志