ExtJS:MessageBox不会阻止上传

问题描述

我有一个表单,其中的文件字段必须在大小限制内。 如果已达到限制,则用户可以选择是否允许文件。 “取消”将取消上传。

我有一个checkFile函数,它检查文件的大小,还有一个uploadFile函数,该文件上传检查文件结果的文件:

checkFile : function(file){
    var result = /.pdf$/i.test(file.name);
    var fileOk;
    var maxSizeMo = this.MAX_SIZE / (1024*1024);
    var cancelUpload;

    if (result) {
        if (file.size < this.ALERTE_SIZE) {
            fileOk= true;
        } else if (file.size > this.ALERTE_SIZE && file.size < this.MAX_SIZE) {
            fileOk = true;

            Ext.MessageBox.show({
                title: 'Warning',msg: 'Some msg',width: 330,buttons: Ext.MessageBox.OKCANCEL,icon: Ext.MessageBox.WARNING,closable: false,fn: function(btn){
                    if(btn!='ok'){
                        cancelUpload = true;
                    } else { 
                        cancelUpload = false;
                        return;
                    }
                }
            });

        } else {
            fileOk = false;
            cancelUpload = true;
        }
    } else {
        fileOk = false;
        cancelUpload = true;
    }
    return {isTestOk : fileOk,isCancelled : cancelUpload};
},

AND

uploadFile : function(fileField,value,eOpts){
    var file = fileField.fileInputEl.dom.files[0];
    var resultCheck = this.checkFile(file);

    if(resultCheck.isTestOk){
        if(!resultCheck.isCancelled){
            this.loadMask.show();
            app.FileUploader.uploadFile(file,this,function(success,fileName,fileReference,exception){
                try {
                    if(success === true){
                        var recordConfig = [{label : fileName,value : fileReference,supprimer : false,context : null}];
                        this.addPJAndSelect(recordConfig);
                        fileField.reset();
                    }else if(exception){
                    }
                }finally{
                    this.loadMask.hide();
                }
            });
        } else {
            PopupHelper.alerte("Upload cancelled by the user");
        }
    }
},

messageBox不会阻止上传,也不会等待用户的回答。如何等待点击按钮?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)