Laravel防止URL在刀片window.location中转义

时间:2018-09-14 05:58:24

标签: php html laravel laravel-blade

我有一个按钮,可以在单击时下载文件,就像这样。

<?php
    $file = public_path('storage\excel.xlsx');
?>
{{$file}} //this prints C:\xampp\htdocs\project1\public\storage\file.xlsx 
<button type="button" class="btn btn-primary btn-add-data" data-toggle="" data-target="" onclick="window.location='{!! $file !!}'"> Download File </button>

当我使用onclick="window.location='C:\xampp\htdocs\project1\public\storage\file.xlsx'"时,效果很好。

但是当我使用上面的代码时,它无法引发错误SyntaxError: malformed hexadecimal character escape sequence

我想这是因为反斜杠导致它尝试转义字符串。 我已经尝试使用{!! $file !!}并将其设置为(string),但仍然无法正常工作。

1 个答案:

答案 0 :(得分:1)

您只需在Laravel 5+中使用它

<a href={{ asset($file) }}>Download</a>