我有一个复选框,它控制ExtJ中的4 dateFields。我希望能够给他们一个共同的属性,让他们能够用一个命令禁用所有字段。我想有更简单的方法可以做到这一点。它可以工作,但是它是一个很大的代码块。
到目前为止,这是复选框的变更事件实现:
change: function (cmp, newValue, oldValue, eOpts) {
var dt1 = cmp.up().down('#Dtf1');
dt1.setDisabled(newValue);
var dt2 = cmp.up().down('#Dtf2');
dt2.setDisabled(newValue);
var dt3 = cmp.up().down('#Dtf3');
dt3.setDisabled(newValue);
var dt4 = cmp.up().down('#Dtf4');
dt4.setDisabled(newValue); }发布于 2015-10-08 05:18:00
您可以添加一个属性,例如:
{
xtype: 'textfieid',
itemId: 'Dtf1',
dtf: true
}然后您就可以进行如下查询:
cmp.up().query('[dtf=true]').forEach(function(item){
item.setDisabled(newValue);
});也可以使用查询,例如:
cmp.up().query('#Dtf1, #Dtf2, #Dtf3, #Dtf4').forEach(function(item){
item.setDisabled(newValue);
});https://stackoverflow.com/questions/32999799
复制相似问题