如何使用 extjs 4 获取无线电组检查值?
Posted
技术标签:
【中文标题】如何使用 extjs 4 获取无线电组检查值?【英文标题】:How to get radiogroup checked value using extjs 4? 【发布时间】:2013-07-26 07:21:25 【问题描述】:我将 extjs 4 用于单选按钮。代码如下
var mychkbxgrp = Ext.create('Ext.form.RadioGroup',
fieldLabel: 'Layer',
columns: 1,
items:[
boxLabel: 'District', name: 'rb', inputValue: 'district',itemId:"DIS"
,
boxLabel: 'SubDistrict', name: 'rb', inputValue: 'Subdistrict',itemId:"sub"
,
boxLabel: 'Village', name: 'rb', inputValue: 'Village'
,
boxLabel: 'Road', name: 'rb', inputValue: 'Roads'
,
boxLabel: 'Point', name: 'rb', inputValue: 'POINT'
],
listeners:
change : function()
alert(this.getValue());
);
一旦选中,我想获取选中的单选按钮的值。为此,我使用了听众但没有工作。我是对的还是需要使用其他方式。请帮助我。
【问题讨论】:
【参考方案1】:你可以使用函数getChecked()
【讨论】:
【参考方案2】:我尝试了很多解决方案,但只有以下一种有效。希望对你有帮助
listeners:
change : function(obj, value)
alert(value.individual);
【讨论】:
【参考方案3】:您的代码看起来不错。更改事件被触发。你唯一需要做的改变是
listeners:
change : function(obj, value)
alert(value.rb);
value.rb 将为您提供被选中的单选按钮的值。
【讨论】:
在你的代码中如果你把alert(this.getValue())
改成alert(this.getValue().rb)
,你就完成了。【参考方案4】:
这也可以写成通用的来处理你所有的广播组。值(在我的示例中使用 radioGroup)是 RadioGroup,因此您可以使用
getChecked()像这样:
listeners:
change: radioGroupHandler
...
function radioGroupHandler(obj, radioGroup)
var checked = radioGroup.getChecked();
if (checked.length)
alert(radioGroup.getChecked()[0].getValue());
else
alert('nothing checked');
【讨论】:
以上是关于如何使用 extjs 4 获取无线电组检查值?的主要内容,如果未能解决你的问题,请参考以下文章
ExtJs分组中的clearfilter后如何获取特定组的所有记录
如何在Extjs 4中使用自定义检查或选中的radiogroup事件