我已经按照基本程序获取了单选按钮表单的选定值。
....
xtype: 'radiofield',
name: 'timespan',
id: 'timespan',
value: 7,
checked: true,
fieldLabel: 'Time Span',
boxLabel: '7 days'
}, {
xtype: 'radiofield',
name: 'timespan',
value: '30',
fieldLabel: '',
labelSeparator: '',
hideEmptyLabel: false,
boxLabel: '30 days'
}, {
xtype: 'radiofield',
name: 'timespan',
value: '60',
fieldLabel: '',
labelSeparator: '',
hideEmptyLabel: false,
boxLabel: '60 days'
}, {
xtype: 'radiofield',
name: 'timespan',
value: 'all',
fieldLabel: '',
labelSeparator: '',
hideEmptyLabel: false,
boxLabel: 'All' ....
我使用的方法如下:
Ext.getCmp('filter_form').getForm().getValues()['timespan']
但是当我将它运行到控制台时,我得到了单词on
,而不是获取所选按钮的值。是什么赋予了?!我已经尝试了几种不同的getValues,getForm等组合,但我总是以on
或true
或false
结束。这是怎么回事?
答案 0 :(得分:5)
尝试设置无线电的inputValue
属性。哪个是应该生成的输入元素的value属性的值,并且应该在作为表单的一部分提交时用作参数值。
{
xtype : 'radiofield',
name : 'timespan',
inputValue : '30',
hideEmptyLabel : false,
boxLabel : '30 days'
}
然后它可以作为
访问Ext.ComponentQuery.query('[name=timespan]')[0].getGroupValue();
答案 1 :(得分:4)
想出来!事实证明我的extjs示例代码有错误!
我将value
更改为inputValue
。取自Sencha Docs,inputValue
是:
应该生成的输入元素值的值 属性 并且在作为表单的一部分提交时应该用作参数值。 默认为:'on'
啊哈!!因为我没有指定“真实”值,所以默认为on
。
使用extjs示例/示例代码时要小心!