revokeObjectURL在mozilla firefox和Microsoft Edge中不起作用

时间:2019-01-12 03:37:14

标签: jquery ajax

但是,我们不必更新页面。这段代码在google chrome中可以完美地工作,但是在mozilla firefox和Microsoft Edge中什么也不做,下载不会启动,也不会在控制台中显示任何错误。 我是在做错什么还是不兼容的问题?

Ajax:

                    $.ajax({
                        url:"../../views/ajax.php",
                        method:"POST",
                        data:dato,
                        cache:false,
                        contentType: false,
                        processData:false,
                        xhrFields: {
                            responseType: 'blob'
                        },
                        beforeSend: function() {
                          $("#loading").removeClass('d-none');
                        },
                        success: function(regresos){
                            alert(regresos);
                            $("#loading").addClass('d-none');
                            descargar(regresos, nombre);
                        }
                    });

开始下载的功能:

 function descargar(blob, nombre){
        var a = document.createElement('a');
        var url = window.URL.createObjectURL(
            new Blob([ blob ], { type: 'application/octet-stream' })
        );

    a.href = url;
    a.download = 'perfil_' + nombre + '.pdf';
    a.click();
    window.URL.revokeObjectURL(url);
}

0 个答案:

没有答案