在ExtJS中,设置和获取radio控件的选取状态,主要依赖于radio控件的`setValue`方法和`getValue`方法,以及`checked`属性(尽管`checked`属性在ExtJS的Radio组件中不直接作为API方法使用,但了解其背后的逻辑有助于理解状态)。
### 设置Radio控件的选取状态
使用`setValue`方法来设置radio控件的值,这通常会导致与该值匹配的radio按钮被选中。在ExtJS中,radio控件通常作为`Ext.form.RadioGroup`的一部分存在,每个选项都是一个`Ext.form.Radio`。然而,设置`setValue`时,你实际上是在设置`RadioGroup`的值,这将自动选择具有该值的radio按钮。
// 假设你有一个RadioGroup的引用,名为radioGroup
radioGroup.setValue('your_radio_value'); // 将值设置为'your_radio_value',匹配此值的radio将被选中
### 获取Radio控件的选取状态
获取radio控件的选取状态通常意味着你想知道哪个radio按钮被选中了。这可以通过读取`RadioGroup`的`getValue`方法来完成,它会返回当前被选中的radio按钮的值。
// 假设你有一个RadioGroup的引用,名为radioGroup
var selectedValue = radioGroup.getValue(); // 获取当前被选中的radio的值
// 如果你需要检查是否有radio被选中,可以检查selectedValue是否为null
if (selectedValue !== null) {
// 有radio被选中
} else {
// 没有radio被选中
}
需要注意的是,`Ext.form.Radio`组件本身并不直接提供`getValue`或`setValue`方法,这些方法是在`Ext.form.RadioGroup`上定义的。每个`Radio`控件都通过其`name`属性(或`boxLabel`,取决于你的使用场景)与`RadioGroup`关联,而`RadioGroup`负责管理这些`Radio`控件的集合,并提供`getValue`和`setValue`等方法来操作整个组的状态。