如何获取多个复选框字段的值

时间:2013-11-27 05:14:33

标签: checkbox sencha-touch-2

我是Senchatouch的新手,我正在努力获得Check box字段的值。我知道获取单个复选框字段的值,但我需要获取所选复选框字段的值,而且我需要将值传递给json数据。任何帮助将非常感激。提前谢谢。

这是我的代码如下:

 {
xtype:'panel',
id:'panel1',
items:[
        {
            xtype:'panel',
            id:'pan1',
            hidden:true,
            layout:'vbox',
            items:[
                 {
                   xtype: 'checkboxfield',
                   id:'day1',
                    value: 'day1',
                    label: 'day1',
                    labelAlign: 'right',
                     labelWidth: '90%',
                listeners:{
                    check:function()
                                {
                                var a=Ext.getCmp('day1').getValue();
                                localStorage.setItem("day1" ,a);

                                },

                            },
                         },               
                                 {
                                  xtype: 'checkboxfield',
                                  id:'day2',
                                  value: 'day2',
                                  label: 'day2',
                                  labelAlign: 'right',
                                  labelWidth: '90%',         
                                    },
                                 {
                                    xtype: 'checkboxfield',
                                    value: 'day3',
                                    id:'day3',
                                    label: 'day3',
                                    labelAlign: 'right',
                                    labelWidth: '90%',
                                 },

                                                   ]
                                    },      
                                    ]
                             },
                                                        },  

1 个答案:

答案 0 :(得分:1)

Ext.ComponentQuery.query("checkboxfield{isChecked()}");应返回所有复选框字段。

我认为你应该知道该怎么做。

更新:如果您不想处理每个复选框字段,可以通过编程方式轻松完成,如下所示:

for (var i=1;i<=3;i++){
    (function(index){
        var id = 'day' + index.toString();
        var component = Ext.getCmp(id);
        localStorage.setItem(id, component.getValue());
    }(i);
}

以编程方式从localstorage获取值类似。