如果已打开模型对话框,则无法下载文件

时间:2018-05-17 05:30:52

标签: jquery css asp.net-mvc asp.net-mvc-4

  

我们使用jquery扩展打开了一个弹出窗口。我们的要求是   单击弹出窗口中的按钮下载文件。我的代码就像   这个: -

JS code:-
showModalData: function (obj) {
        var url = OC.MVC.util.getLink("Employee", "GetDetail");
        $.ajax({
            url: url,
            type: 'GET',
            success: function (result) {                         
                $.modal(result);//open the modal popup
            },
            error: function (err) {
                alert(err.responseText);
            }
        });
    }

Controller code:-
 public virtual ActionResult GetDetail(Employee model)
        {
            return PartialView(model);
        }

View:-
<div>
@Html.Raw(Html.Button("btnDownload", "Download").ToString())
<div>
  

现在点击下载我必须下载此代码的文件   是: -

  public ActionResult Download()
        {
            byte[] fileBytes = System.IO.File.ReadAllBytes(@"c:\New\note.txt");
            string fileName = "note.txt";
            return (File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, fileName));

        }
  

点击下载按钮,它将调用定义的下载操作   在控制器中。现在返回(文件(fileBytes,   System.Net.Mime.MediaTypeNames.Application.Octet,fileName));应该   打开保存对话框以选择保存文档的路径。但是   它没有打开保存对话框。它也没有显示错误   并且没有任何事情发生。注意:Modal Popup中的下载按钮。

1 个答案:

答案 0 :(得分:1)

您需要确保通过浏览器的正常HTTP请求调用下载操作,而不是通过JavaScript启动的AJAX调用。