使用XMLHttpRequest處理非同步請求返回的圖片等二進位檔案

來源:互聯網
上載者:User

標籤:cti   idt   setattr   window   接受   處理   channel   end   ready   

封裝的Ajax沒有接受檔案的類型 所以要用傳統的 XMLHttpRequest來處理

function ShowPdf() {
            var url = "/ChannelLiquidation/ShowPdf.ashx?PdfName=<%=PdfName %>&pdfFolder=<%=PdfFolder %>";
            var xhr = null;;
            if (window.XMLHttpRequest) {// code for IE7, Firefox, Opera, etc.
                xhr = new XMLHttpRequest();
            }
            else if (window.ActiveXObject) {// code for IE6, IE5
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
            if (xhr != null) {
                xhr.onreadystatechange = false;
                xhr.open(‘GET‘, url, true);
                xhr.responseType = "blob";
                xhr.setRequestHeader("client_type", "DESKTOP_WEB");
                xhr.setRequestHeader("desktop_web_access_key", Math.random().toString());
                xhr.onload = function () {
                    if (this.status == 200) {
                        var blob = this.response;
                        var img = document.createElement("img");
                        img.onload = function (e) {
                            window.URL.revokeObjectURL(img.src);
                        };
                        img.src = window.URL.createObjectURL(blob);
                        img.style.cssText = "width: 90%; float: left";
                        img.setAttribute("onerror","this.src=‘../Assets/img/notBill.jpeg‘");
                        $("#div_imgcontainer").html(img);
                    }
                }
                xhr.send();
            }
        }
        $(function () {ShowPdf();})

使用XMLHttpRequest處理非同步請求返回的圖片等二進位檔案

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.