0
我有一個表單將數據通過JQuery發佈到Controller,然後返回FileResult。我有一個與JQuery連接的href,可以成功發佈到控制器。生成FileResult,但客戶端似乎沒有收到它。這是什麼標準的方法?使用JQuery/ASP發佈表單並獲取文件結果MVC
我有一個表單將數據通過JQuery發佈到Controller,然後返回FileResult。我有一個與JQuery連接的href,可以成功發佈到控制器。生成FileResult,但客戶端似乎沒有收到它。這是什麼標準的方法?使用JQuery/ASP發佈表單並獲取文件結果MVC
即使您能夠以JavaScript接收文件,您將如何處理它?將它保存到客戶端計算機?你不能。它並不需要請求使用AJAX返回文件的控制器動作。只需創建一個標準鏈接,並讓用戶決定如何處理下載的文件。
所有你需要的是設置正確的HTTP標頭:
public ActionResult Download()
{
return File(@"c:\foo.pdf", "application/pdf", "foo.pdf");
}
,然後生成您的下載鏈接:
<%= Html.ActionLink("download file", "download") %>
這是有道理的。當他們點擊下載文件時,我不想觸發整頁回發。這可能通過打開另一個窗口? – Kenoyer130 2010-12-15 16:00:03
爲了說明,文件是基於發佈的數據創建的。它不是一個靜態文件。 – Kenoyer130 2010-12-15 16:01:46
@Kenoyer,如果您正確設置了響應標題,它將不會導航到該頁面。 – hunter 2010-12-15 16:02:43