ExtJS菜单checkItem:在某些情况下如何防止项目检查事件?

时间:2012-06-18 19:01:45

标签: events extjs click

对于菜单checkItem,当用户点击它时,默认情况下会触发checkchange;我想知道如果某个案例得到满足,如何在点击后不改变其检查状态,换句话说,停止此事件链。

我尝试了以下代码,但没有工作:

listeners: {
'click': function(item, evt) {
    if(1) { //verify whether that certain case
        evt.stopEvent(); //since click_event is triggered before setChecked()/checkChange, I thought this may stop its going further...
        alert('case met!');
    }
},
checkHandler: function(item, checked) {
   //...
}

1 个答案:

答案 0 :(得分:5)

您可以收听beforecheckchange事件。 Here它位于文档中。

根据文档,只需应用条件逻辑,如果没有通过,则从处理程序返回false。

E.g:

listeners: {
    'beforecheckchange': function(item, checked) {
        if(!1) { // or whatever your conditional logic is
            return false;
        }
    },
}