Sencha Touch Checkbox选择标签点击

时间:2011-10-04 11:11:15

标签: javascript sencha-touch extjs

我的应用中有一些复选框:

http://img846.imageshack.us/img846/7397/628bc474d4904ff2993df81.png

现在我想在点击标签时触发/切换选择。

有什么想法吗?

3 个答案:

答案 0 :(得分:5)

如果您想在Sencha Touch 2中实现相同功能,可以将以下内容用于无线电输入或复选框:

defaults: {
    xtype: 'radiofield',
    name: 'fieldname',
    listeners: {
        // Adding listener for tap event on label element,
        // this should toggle the checkbox.
        "tap": {
            element: "label",
            fn: function () {
                var me = this;
                me.setChecked(!me.isChecked());
            },
        }
    }
}

编辑:根据@jayteejee,显然,“点击”事件应该是“点击”。将原始的“click”侦听器相应地更改为“tap”侦听器。

答案 1 :(得分:3)

使用此选项可将标签元素添加到标签元素。

{
    id: 'username',
    xtype: 'checkboxfield',
    name : 'username',
    label: 'User Name',
    listeners:{
        labelEl:{
           tap:function(){
              var obj = Ext.getCmp('username');
             if(obj.isChecked()){
                    obj.uncheck();
              }else{
                    obj.check();
              }
           }
        }
    }
}

答案 2 :(得分:1)

Thijs'答案适用于微调,以便在使用Sencha Touch 2的Android和iOS上工作。只需将“点击”更改为点击

{
    xtype: 'checkboxfield',
    name: 'fieldname',
    label: 'Label',
    listeners: {
        tap: {
            element: "label",
            fn: function () {
                this.setChecked(!this.isChecked());
            }
        }
    }
}