這裏是我的代碼:爲什麼JS打開一個txt文件而不是下載它?
服務器端:
public function export(){
$arr = array();
if($_POST["type"] == "save"){
$name = "export.txt";
file_put_contents("$name",$_POST["text"]);
$arr["type"] = "link";
$arr["url"] = "http://localhost:8000/{$name}";
}
return $arr;
}
客戶端:
$(document).on('click', '#export', function() {
var names = ["سعید خرمی", "فرید هادوی"];
var namess = names.join('\n');
$.ajax({
type: "post",
url: "/export",
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
data: {
type: "save",
text: namess
},
dataType: "json",
success: function(data){
var href = data.url;
window.location = href;
}
});
})
當我點擊#export
(按鈕),它會打開.txt
文件(而不是下載它)。事情是這樣的:
注意到我使用Chrome。也不會在其他瀏覽器。
我該如何強制它下載那個.txt
文件?
您應該使用PHP和發力下載標題。如果您直接重定向到文件URL,並且瀏覽器支持要顯示的文件類型,則它將顯示輸出而不是下載。 –
瀏覽器顯示的所有內容均已下載。 – nnnnnn
@nnnnnn但我需要一個'.txt'文件.. – stack