0

JQuery、Ajax、および C# を使用してテキスト ファイルをダウンロードするために、ネット上で多くの記事を試しました。それらのほとんどは、ajaxを使用してファイルをダウンロードできないと言っています。

これが私のJQuery-Ajaxコードです

    $(document).on("click", "#imgDownload", function (event) {
        $.ajax({
            url: "/members/DownloadSelectedFile?SelectedUserName=" + $("#AllowedFriends").find(":selected").text() + "&SelectedFileName=" + $(this).siblings("span").eq(0).text(),
            success: function () {
                alert("Khushi");
            }
        });
    });

ここに私のC#コードがあります

public void DownloadSelectedFile(string SelectedUserName, string SelectedFileName)
        {
            Response.Clear();
            Response.ContentType = "application/octet-stream";
            Response.AppendHeader("Content-Disposition", "Filename=" + SelectedFileName + ".txt");
            Response.TransmitFile(Server.MapPath("~/Users/" + SelectedUserName + "/" + (string)Session["LoggedInUserName"] + "/" + SelectedFileName + ".txt"));
            Response.End();
        }

では、テキスト ファイルをダウンロードできるようにするには、どのような変更を加える必要がありますか。

4

1 に答える 1

4

runat=server であるかどうかにかかわらず、ドキュメントに IFrame を追加します。次の例では、クライアントを維持する必要があります。

<iframe id="myDownloaderFrame" style="display:none;" ></iframe>


$(document).on("click", "#imgDownload", function (event) {
    $("#myDownloaderFrame").attr("src","/members/DownloadSelectedFile?SelectedUserName=" + $("#AllowedFriends").find(":selected").text() + "&SelectedFileName=" + $(this).siblings("span").eq(0).text());

});
于 2013-09-14T11:05:35.687 に答える