ExtJs的radiogroup被选中的问题
xtype:'radiogroup',fieldLabel:'性别,id:sex,columns:2,items:[{boxLabel:'男,name:'man',inp...
xtype : 'radiogroup',
fieldLabel : '性别,
id : sex,
columns : 2,
items : [{boxLabel : '男, name :' man', inputValue : 'man',checked : true,},
{boxLabel : '女, name : 'woman', inputValue : 'woman',}
],
checkChange : function (){ }
如题,一个radiogroup,我现在想通过checkChange事件,得到当前处于选中状态的inputValue,请高手解答 展开
fieldLabel : '性别,
id : sex,
columns : 2,
items : [{boxLabel : '男, name :' man', inputValue : 'man',checked : true,},
{boxLabel : '女, name : 'woman', inputValue : 'woman',}
],
checkChange : function (){ }
如题,一个radiogroup,我现在想通过checkChange事件,得到当前处于选中状态的inputValue,请高手解答 展开
展开全部
增加radiogroup事件,不知是不是你所需要的
{
xtype : 'radiogroup',
fieldLabel : '性别,
id : sex,
columns : 2,
items : [{boxLabel : '男, name :' man', inputValue : 'man',checked : true,},
{boxLabel : '女, name : 'woman', inputValue : 'woman',}
],
//以下是监听事件
listeners : {
change : function(radiofield,oldvalue){//这事件是当radiogroup的值发生改变时进入
alert(radiofield.getValue());//输出选中的值
alert(oldValue);//输出原值
}
}
}
{
xtype : 'radiogroup',
fieldLabel : '性别,
id : sex,
columns : 2,
items : [{boxLabel : '男, name :' man', inputValue : 'man',checked : true,},
{boxLabel : '女, name : 'woman', inputValue : 'woman',}
],
//以下是监听事件
listeners : {
change : function(radiofield,oldvalue){//这事件是当radiogroup的值发生改变时进入
alert(radiofield.getValue());//输出选中的值
alert(oldValue);//输出原值
}
}
}
展开全部
Ext.override(Ext.form.RadioGroup, {
getValue: function() {
var v;
if (this.rendered) {
this.items.each(function(item){
if (!item.getValue())
return true;
v = item.getRawValue();
return false;
});
}
else {
for (var k in this.items) {
if (this.items[k].checked) {
v = this.items[k].inputValue;
break;
}
}
}
return v;
},
setValue: function(v) {
if(this.rendered)
this.items.each(function(item) {
item.setValue(item.getRawValue() == v);
});
else
for(k in this.items) this.items[k].checked = this.items[k].inputValue == v;
}
});
把上述代码加到你的js文件的前面,
重写radioGroup的getValue(),setValue()方法就可以了
getValue: function() {
var v;
if (this.rendered) {
this.items.each(function(item){
if (!item.getValue())
return true;
v = item.getRawValue();
return false;
});
}
else {
for (var k in this.items) {
if (this.items[k].checked) {
v = this.items[k].inputValue;
break;
}
}
}
return v;
},
setValue: function(v) {
if(this.rendered)
this.items.each(function(item) {
item.setValue(item.getRawValue() == v);
});
else
for(k in this.items) this.items[k].checked = this.items[k].inputValue == v;
}
});
把上述代码加到你的js文件的前面,
重写radioGroup的getValue(),setValue()方法就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
API中有个这样的事件:change : ( Ext.form.RadioGroup this, Ext.form.Radio checked ) ,
第二个参数应该就是你想要的值,
我现在没有ExtJs的环境,没法测试,你自己试下看行不
第二个参数应该就是你想要的值,
我现在没有ExtJs的环境,没法测试,你自己试下看行不
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询