0

团队,

我有一个问题,我不想在某个标志上展开组合框并想显示警报消息。

EXTJS 中没有像 onClick 这样的事件,所以我尝试使用焦点事件,但组合框仍在扩展。

代码

focus:function() {
    if(this.store.baseParams.donotExpandFlag) {
           alert("I should not expand this combo");
           // What to do here and out side of IF block so that there is conditional expansion          
    }              
}
4

1 回答 1

2

您需要指定您的 ExtJS 版本并格式化您的代码。

这是您可以为 ExtJS4.x 做的事情

手动设置/取消设置isExpanded属性。那应该有效(未经测试)

对于 ExtJS3.x,您将必须覆盖该isExpanded()方法,此外还应用一个自定义标志,指示阻塞/自动并在默认代码执行之前进行检查。

你可以试试这个(未经测试)

_isExpanded:  true, // true means block, false auto
isExpanded: function(){
    return this._isExpanded || (this.list && this.list.isVisible());
},

不,这行得通。请参阅ExtJS3.4的 JSFiddle

ExtJS3.4的第二个JSFiddle 带有一个表单

于 2012-12-20T10:47:51.580 回答