繁体   English   中英

ExtJs 4.2嵌套提示消息框

[英]ExtJs 4.2 nested prompt message box

我有一个看起来像这样的代码:

        Ext.Msg.prompt( Translation.RefusalMessageBoxTitle, "", 
            function(btn, text, cfg ){

                if(btn == 'ok' && Ext.isEmpty(text)) {
                    var newMsg = '<span style="color:red;" class="error">' + Translation.RefusalMessageBoxEmpty + '</span>';
                    Ext.Msg.show(Ext.apply({}, { msg: newMsg }, cfg));
                }else if( btn !== 'ok' ){
                    return;
                }else if( btn == 'ok' ){
                    this.sendRefusalAnswer( methodName, text, "reject", Constant.DocumentStatus.REFUSED, me.selectedDocument.get('id'));
                }

            }, this, true, '' );

现在的mz问题是

 var newMsg = '<span style="color:red;" class="error">' + Translation.RefusalMessageBoxEmpty + '</span>';
                        Ext.Msg.show(Ext.apply({}, { msg: newMsg }, cfg));

代码的一部分被执行了,但是盒子突然关闭了……我该如何防止呢? 有任何想法吗?

编辑:

仅在EXTJS 4.2版本上才发生这种情况生成日期:2013-03-11 22:33:40(aed16176e68b5e8aa1433452b12805c0ad913836)仅适用!

版本建立日期:2013-05-16 14:36:50(f9be68accb407158ba2b1be2c226a6ce1f649314)正常工作

不要使用Ext.Msg单例,而要使用常规窗口或自己创建Ext.window.MessageBox多个实例。 单例本身就是一个窗口,并且该组件由alertconfirmprompt等的所有调用共享,因此不可能同时显示多个窗口。

我将其转换为消息对象:

        Ext.Msg.show({ 

            title: Translation.RefusalMessageBoxTitle, 
            minWidth: this.minPromptWidth,
            buttons: Ext.Msg.OKCANCEL,
            callback: function(btn, text, cfg ){

                if(btn == 'ok' && Ext.isEmpty(text)) {
                    var newMsg = '<span style="color:red;" class="error">' + Translation.RefusalMessageBoxEmpty + '</span>';
                    Ext.Msg.show(Ext.apply({}, { msg: newMsg }, cfg));
                }else if( btn !== 'ok' ){
                    return;
                }else if( btn == 'ok' ){
                    this.sendRefusalAnswer( methodName, text, "reject", Constant.DocumentStatus.REFUSED, me.selectedDocument.get('id'));
                }

            }, 
            scope:this, 
            multiline: true,  

        });

但仍然不知道如何防止它向我靠近°_°

好的,我发现了……该死的构建版本在mz构建机器上是不同的。

我在当地有

建立日期:2013-03-11 22:33:40(aed16176e68b5e8aa1433452b12805c0ad913836)

在mz测试机上

建立日期:2013-05-16 14:36:50(f9be68accb407158ba2b1be2c226a6ce1f649314)

在我的本地机器上,dous不能正常工作...但是在测试机上,它可以正常工作... 3个月! wtf!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM