24

目的:

いくつかのタスクが正しく終了した後、新しいタブで PDF を印刷する必要があります。

手順: サーバーに移動し、PDF を取得して新しいタブで開くメソッドを実行したいのですが、これらを試してみましたが、機能しません。

コントローラ: エクスポート

 public ActionResult PrintPdf()
    {
        Response.AppendHeader("Content-Disposition", "inline; filename= " + MyClassPdfWriter.GetFileName);
        return File(MyClassPdfWriter.GetMemoryStream, "application/pdf");
    }

ビュー:

function TasksSucced(){
      $.get('@Url.Action("PrintPdf", "Export", "new {target = _blank}")');
}
4

6 に答える 6

32

解決しました!それは私のために働く

 window.open('/Export/PrintPdf');
于 2013-04-11T10:07:09.163 に答える
5
$("a[target!='_blank'][href$='.pdf']").attr("target", "_blank");
于 2014-12-03T12:14:36.227 に答える
0

jQuery.defferedを試してみてください。サンプル関数を用意しました。getPdf 呼び出しを処理してから、promise を解決します。お役に立てれば

function getPDF() {
    return '';
}

getPdf()
  .then(function(response) {
    console.log('response here' + response);
    window.open(response);
  }).fail(function(){
      console.error('failed reposne');
  });
于 2018-11-20T08:24:18.750 に答える