0

私はpdfを生成するためにwicked_pdfプラグインを使用しています。ユーザーがPDFリンクをクリックしたときにメッセージとスピナーを表示していますが、PDFが生成され、ダウンロード/表示のためにブラウザーにプッシュされたときにそれを非表示にします。実行されないbodyonloadにjqueryコードを追加しました。PDFファイルがブラウザにプッシュされたときにjquery関数をトリガーする他の方法はありますか?

4

1 に答える 1

1

これはかなり複雑な問題ですが、jQuery プラグインを使用する意思がある場合はうまく解決できます。http://jqueryfiledownload.apphb.com/は、私が正しく理解している場合に必要なことを正確に実行できるプラグインです。


私のフロントエンドコードは次のようになります

$.fileDownload('/Content/Print', {
    successCallback: function (url) {
        $("#PrintingMessage").dialog('close');
    },
    failCallback: function (responseHtml, url) {
        $("#PrintingMessage").dialog('close');

        if (responseHtml.indexOf('Error403') != -1) {
            $("#PrintingFailedMessage").html("Error 403.");
        } else if (responseHtml.indexOf('Error500') != -1) {
            $("#PrintingFailedMessage").html("Error 500.");
        }

        $("#PrintingFailedMessage").dialog({ modal: true });
    },
    httpMethod: "POST",
    data: $('#PublishForm').serialize()
});

そして、私のバックエンドはプロセスの最後にこれを行います。あなたはそれを自分で翻訳する必要があります:)

Response.SetCookie(new System.Web.HttpCookie("fileDownload", "true") { Path = "/" });
return File(file, System.Net.Mime.MediaTypeNames.Application.Octet, filename);
于 2012-09-12T09:01:24.297 に答える