ext的radiogroup和checkgroup的setvalues
radiogroup和checkgroup重写的方法,实现了setvalues
1
Ext.override(Ext.form.CheckboxGroup, {
2
getNames: function() {
3
var n = [];
4
5
this.items.each(function(item) {
6
if (item.getValue()) {
7
n.push(item.getName());
8
}
9
});
10
11
return n;
12
},
13
14
getValues: function() {
15
var v = [];
16
17
this.items.each(function(item) {
18
if (item.getValue()) {
19
v.push(item.getRawValue());
20
}
21
});
22
23
return v;
24
},
25
26
setValues: function(v) {
27
var r = new RegExp('(' + v.join('|') + ')');
28
29
this.items.each(function(item) {
30
item.setValue(r.test(item.getRawValue()));
31
});
32
}
33
});
34
35
Ext.override(Ext.form.RadioGroup, {
36
getName: function() {
37
return this.items.first().getName();
38
},
39
40
getValue: function() {
41
var v;
42
43
this.items.each(function(item) {
44
v = item.getRawValue();
45
return !item.getValue();
46
});
47
48
return v;
49
},
50
51
setValue: function(v) {
52
this.items.each(function(item) {
53
item.setValue(item.getRawValue() == v);
54
});
55
}
56
});
Ext.override(Ext.form.CheckboxGroup, {2
getNames: function() {3
var n = [];4

5
this.items.each(function(item) {6
if (item.getValue()) {7
n.push(item.getName());8
}9
});10

11
return n;12
},13

14
getValues: function() {15
var v = [];16

17
this.items.each(function(item) {18
if (item.getValue()) {19
v.push(item.getRawValue());20
}21
});22

23
return v;24
},25

26
setValues: function(v) {27
var r = new RegExp('(' + v.join('|') + ')');28

29
this.items.each(function(item) {30
item.setValue(r.test(item.getRawValue()));31
});32
}33
});34

35
Ext.override(Ext.form.RadioGroup, {36
getName: function() {37
return this.items.first().getName();38
},39

40
getValue: function() {41
var v;42

43
this.items.each(function(item) {44
v = item.getRawValue();45
return !item.getValue();46
});47

48
return v;49
},50

51
setValue: function(v) {52
this.items.each(function(item) {53
item.setValue(item.getRawValue() == v);54
});55
}56
});


getNames:
浙公网安备 33010602011771号