zoukankan      html  css  js  c++  java
  • 上传附件导入,确认弹框取消后,无法上传附件

    今天遇到的一个问题

    功能描述:导入订单,上传文件,先校验系文件中要导入的订单系统中是否已经存在,如果有,就弹框提示,要不要导入,确定就继续导入,取消用户就重新修改上传。

    问题描述:点击取消之后,上传附件的控件无法再次点击

    HTML代码如下:

    <div id="divMain" style="70%">
        <div class="form-horizontal">
            <table class="table table-bordered table-striped" style="100%">
                <tbody>
                    <tr>
                        <td style="100px">
                            @Html.Factory().DropDownList().Enum("AgreementTypeEnum").NgModel("c.vm.IsAgreement")
                        </td>
                        <td>
                            <e2-file-uploader ng-model="c.vm.files" type=".xls,.xlsx,XLS,.XLSX" multiple="false" show-badge="false" upload-finished="c.Event.FileUploaded(file, response, status)">
                                <i class="fa fa-upload"></i>&nbsp;<font translate="Attachment"></font>
                            </e2-file-uploader>
                        </td>
                    </tr>
                </tbody>
            </table>
        </div>
    
    
        <div class="clearfix"></div>
        <div ng-if="(c.vm.SucceedCount>0 ||c.vm.FailedCount>0) && !c.vm.ErrorMessage">
            成功导入{{c.vm.SucceedCount}}条数据,失败{{c.vm.FailedCount}}条,<a href="{{ c.vm.FailedExcel}}" target="_parent">失败下载</a>
        </div>
        <div ng-if="(c.vm.SucceedCount ==0 && c.vm.FailedCount==0) && c.vm.ErrorMessage==undefined">
            没有可导入数据
        </div>
        <div>{{c.vm.ErrorMessage}}</div>
        </div>

    js代码如下:

    def.ContentState('Import', "id").Controller(['pb', 'pbui', 'serverVm', '$scope', '$timeout', '$stateParams', function (pb, pbui, serverVm, $scope, $timeout, $stateParams) {
        var c = pb.Super(this, serverVm, $scope, false);
        c.vm = { files: [], template: '../Template/ImportFormat/MyPo.xlsx', IsAgreement:"协议" };
    
        c.Event = {
            FileUploaded: function (file, response, status) {
                pbui.PutProcessing("divMain");
                c.vm.Items = [];
                var flag = false;
                if (c.vm.IsAgreement == "协议") {
                    flag = true;
                }
                pb.CallAction('/PO/MyPO/IsExistPONo', 'fileName=' + response.SavedFileName + "&IsAgreementOrder=" + flag, function (result) {
                    if (result.data != "") {
                        pbui.Confirm('ConfirmImportExistSamePONo', result.data).then(function () {
                            c.Event.Import(response, flag);
                        }, function () {
                                c.vm.files.splice(0, c.vm.files.length);
                                pbui.PutProcessing("");
                        })                    
                    }
                    else {
                        c.Event.Import(response, flag);
                    }
                });
            },
            Import: function ( response, flag) {
                  pb.CallAction('/PO/MyPO/Import', 'fileName=' + response.SavedFileName + "&IsAgreementOrder=" + flag, function (result) {
                    c.vm.files.splice(0, c.vm.files.length);
                    result.data = JSON.parse(result.data);
                    if (result.isRcResult) {
                        c.vm.FailedCount = result.data.FailedCount;
                        c.vm.SucceedCount = result.data.SucceedCount;
                        c.vm.FailedExcel = "../Download/DownloadAttachment?psSaveTo=&psOriginalFileName=POItem.xlsx&psSavedFileName=" + result.data.FailedExcel;
                        c.vm.ErrorMessage = result.data.ErrorMessage;
                    }
                    pbui.PutProcessing("");
                });
            }
        }
    }]);

    因为选择文件上传后会有一个正在加载对的遮罩层,点击取消后还一直在转圈

    pbui.PutProcessing("divMain");

    先是加了这个取消遮罩

    pbui.PutProcessing("");
  • 相关阅读:
    【JavaWeb】MVC案例之新闻列表
    PayPal高级工程总监:读完这100篇论文 就能成大数据高手(附论文下载)
    自己动手搭建搜索工具
    某学院软件工程复试回忆总结
    【NLP】Tika 文本预处理:抽取各种格式文件内容
    OpenNLP:驾驭文本,分词那些事
    【类库】私房干货.Net数据层方法的封装
    Oracle手边常用70则脚本知识汇总
    Oracle手边常用命令及操作语句
    快速了解什么是自然语言处理
  • 原文地址:https://www.cnblogs.com/wmm-pcy/p/14479518.html
Copyright © 2011-2022 走看看