[英]How to dynamically change a fieldLabel in extJs3
表單字段似乎沒有fieldLabel
的更新方法,只能將其設置為構造函數屬性。
{
xtype: 'textfield',
fieldLabel: 'Field Label Text',
width: 465,
name: 'field_1',
id: 'field_1',
labelSeparator: '',
allowBlank: false,
value: ''
}
我設法通過以下方式進行了更改:
var field = Ext.getCmp("field_1");
field.el.parent().parent().dom.children[0].innerHTML = "new Label"
但這感覺有點亂。
是否有更改標簽的正確方法?
注意:我知道extJs3是古老的歷史,但是我正在從事的項目仍在使用該版本。
只需重寫Field類以添加如下所示的setFieldLabel方法,然后使用
fieldObj.setFieldLabel('New Label');
您應用程序中的任何位置。
Ext.override(Ext.form.Field, {
setFieldLabel : function(text) {
if (this.rendered) {
this.el.up('.x-form-item', 10, true).child('.x-form-item-label').update(text);
}
this.fieldLabel = text;
}
});
干杯!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.