Asp.net-Mvc-3

JQuery Ajax 呼叫 PDF 文件下載

  • January 7, 2016

我的問題類似於使用 Ajax 下載和打開 pdf 文件

但不完全相同,我想要一個 JQuery ajax 的原因是我的文件是從從同一頁面獲取的數據動態生成的。

所以基本上我有一個需要發送到伺服器的 Json 對象,它會動態生成一個文件並將其發送回瀏覽器。

我不想在我的 Json 對象 stringyfied 的錨點上使用查詢字元串,因為我認為這將是一個潛在的威脅,因為查詢字元串有字元限制(我在這裡嗎?)。

請讓我知道我的工作流程是否正確,或者我可以使用不同的流程實現相同的目標。

您不應該使用 AJAX 來下載文件。這行不通。話雖這麼說,您還有兩個選擇:

  1. 操作連結和查詢字元串參數,或者如果必須在某些特定的 javascript 事件中觸發下載,您還可以將 設置window.location.href為應該生成 PDF 文件並將查詢字元串參數傳遞給它的操作。
  2. 或者,如果您擔心您有大量數據要傳遞給將生成 PDF 下載的控制器操作,您可以使用<form>withmethod="POST"和 inside,您可以使用隱藏欄位來儲存盡可能多的參數和數據:
@using (Html.BeginForm("download", "home"))
{
   ... hidden fields containing values that need to be sent to the server
   <input type="submit" value="Download PDF" />
}

引用自:https://stackoverflow.com/questions/7578124