2 qq 36702839 qq_36702839 于 2017.01.13 11:29 提问

extjs5 checkbox 如何监听选中事件?

如题,使用的是extjs5 MVC
在listens里面,check和click都不能监听触发checkbox的选中事件,用change可以监听checkbox的选中事件,现在问题是在选中后,选中事件触发了,可是checkbox还是没有显示选中(在页面没有打钩)
请问是怎么回事,要怎样解决呢???

这是checkbox部分的

 {
                        xtype: 'checkbox',
                        name: 'allCircuits',
                        id: 'ckAllCircuits',
                        fieldLabel: 'All Circuits:',
                        listeners: {
                        change:'onAllCircuitsChecked'
                        }
                    }

这是function部分的

 onAllCircuitsChecked: function (ck, checked) {
        if (checked) {
            // reset asother selection meaningless as select ALL
            var cbCustName = Ext.getCmp("custNameComboBox");
            var cbPEName = Ext.getCmp("peNameComboBox");
            var txtServList = Ext.getCmp("txtServiceList");
            var ckForceDelete = Ext.getCmp("ckDeleteRunningSchedule");
            cbCustName.reset();
            cbPEName.reset();
            txtServList.reset();
            if (! ckForceDelete.getValue() ) {
                Ext.getCmp('addButton').enable();
            }
            Ext.getCmp('deleteButton').enable();
        } else {
            Ext.getCmp('addButton').disable();
            Ext.getCmp('deleteButton').disable();
        }
    },

代码里面的所有reset和enable和disable都正常

1个回答

showbo
showbo   Ds   Rxr 2017.01.13 15:00

change:'onAllCircuitsChecked'

==>去掉引号,要传递函数名

change:onAllCircuitsChecked

qq_36702839
qq_36702839 还有哦,我这个问题主要不是去监听事件哦,是选中后,事件会触发,可是没显示打钩,再点击,就出现钩钩了,可是没有任何事件触发,可能是问题标题写的不清楚了。。。。。
11 个月之前 回复
qq_36702839
qq_36702839 不行啊,如果去掉引号会出现错误的, onAllCircuitsChecked is not defined
11 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!