js 动态多图片下载

最近项目中 有个需求  : 一个订单  可能存在 对张的电子发票 ,且 电子发票从接口中  获取的数据是  url的形式 :例如:http://dsadda.jpg 形式  

当时在想 怎么才可以动态的去下载多张图片呢   (下面是分享 多多交流)

产生了两个想法 :一: 采用 c# 服务端 进行图片流的  打包  并下载  (但是这个方法偏难了 ,所以我果断的舍弃了)

        二:可不可以动态的用js去下载呢?结果还真找到了  下面是代码 show time:

           var time = new Date();
                let triggerDelay = 100;
                let removeDelay = 1000;
                var array = new Array();
                         $.ajax({
                                cache: false,
                                type: "GET",
                                url: "@Url.Action("File","Bill")",
                                data: { 'statementNo': data.StatementNo},
                                async: false,
                                error: function (request) {
                                    layer.msg(request);
                                },
                                success: function (data) {
                                    if (data == null || data == '' || data.length <= 0)
                                    {
                                        layer.msg("无电子发票附件");
                                        return;
                                    }
                                    for (var i = 0; i < data.length; i++) {
                                       
                                        array.push(data[i]);
                                       // _createIFrame(data[i], i * triggerDelay, removeDelay);
                                    }
                                }
                            });

                         for (var j = 0; j < array.length; j++)
                         {
                             console.log(array[j]);
                             _createIFrame(array[j], j * triggerDelay, removeDelay);
                         }

  

 function _createIFrame(url, triggerDelay, removeDelay) {
            //动态添加iframe,设置src,然后删除
            setTimeout(function () {
                var frame = $('<iframe style="display: none;" class="multi-download"></iframe>');
                frame.attr('src', url);
                $(document.body).after(frame);
                setTimeout(function () {
                    frame.remove();
                }, removeDelay);
            }, triggerDelay);
        };

  

posted @ 2018-03-30 13:35  谢冰  阅读(1320)  评论(0编辑  收藏  举报