javascript - laravel pdf文件从ajax请求下载(laravel 5)

标签 javascript ajax laravel pdf download

我的html代码是这样的:

<a href="javascript:;" onclick="showAjaxPdf('{{ $row->file_path }}');"><i class="fa fa-file-pdf-o"></i></a>

我的 javascript 代码是这样的:

function showAjaxPdf(file_path)
        {
            var file_path = file_path.replace(/\\/g,"/");
            //example : file_path = assets/images/myfile.pdf
            $.ajax({
                type: "POST",
                data: 'file_path=' + file_path,
                url: "news/test",
                success: function(response)
                {
                    $('#test').html(response);

                }
            });
        }

我在 Controller 中的功能测试:

public function postTest(Request $request)
    {
$file_path = $request->input('file_path');  
        return response()->download($file_path);       
    }

当我点击 pdf 图标时,没有任何反应。

我希望,当点击pdf图标时,出现这样的:

enter image description here

如何保持点击pdf图标时图片显示的样子?

谢谢

最佳答案

我所做的是,编写了两个单独的路由,一个用于验证,一个用于下载。 在一个 ajax 成功后,我触发了 window.open(downloadUrl,'_blank') 在单独的窗口中下载。 这不是要求的方式,但它可以防止任何即将发生的错误,因为验证 url 将对其进行排序

$.ajax({
            url: verifyUrl,  
            type: 'get',
            cache: false,
            data: null,
            error: function (err){$('#ajax_loader_div').hide();},
            success: function(response) {
                console.log(response);
                $('#ajax_loader_div').hide();
                if (response.status == 'success') 
                {

                    window.open(downloadUrl,'_blank');

                }else if(response.status == 'error') 
                {
                    //show error
                }
            }

        });

关于javascript - laravel pdf文件从ajax请求下载(laravel 5),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34519319/

相关文章:

javascript - JS 多函数执行

Laravel 翻译文件中的 Javascript 调用

php - 如何在其他时间也获得相同帖子标题的独特 slug?

javascript - [].slice 到底是做什么的

javascript - 如何使用 JavaScript 进行另一个按钮的回发

javascript - 为什么我的本地代码和 Chrome 上的代码不同

javascript - 有没有自动缩小和缓存 JavaScript 的插件?

javascript - 使用 jQuery 从 Ajax 响应构建表行(不使用静态 json 数据)

javascript - 如何根据服务器响应更改PeriodicalExecutionr的频率?

jquery - jquery 中的 Blade 产量