在网站上点击按钮时,打开另存为对话框的正确方法是什么?

时间:2016-07-21 13:41:41

标签: javascript c# jquery file model-view-controller

〜编辑更多信息〜

我有3种不同的文件格式,用户可以在“另存为”对话框中单击“保存”按钮时进行选择。

需要保存的数据已经存储在网站的后端(因此表格中没有任何数据需要发送到后端)。

因此,我是否会在前端(html,javascript)上触发一个函数,该函数调用后端(mvc控制器函数)上的函数,该函数使用数据输出另存为对话框并可以选择保存在3中不同的格式。或者我在前端触发一个函数来从后端获取数据并在前端输出另存为对话框(使用javascript / html)。

~END EDIT~

单击网站上的按钮时,打开“另存为”对话框的正确方法是什么?

似乎使用javascript不是打开另存为对话框的正确方法。我目前正在使用MVC,所以问题是我是否有一个触发后端功能的按钮(C#控制器功能)来打开另存为对话框?

我似乎无法找到实施保存按钮的正确(最佳)方式的直接信息,因此非常感谢任何信息!

1 个答案:

答案 0 :(得分:2)

将保存按钮发布到FileResult控制器操作。用户是否获得另存为对话框,或者文件只是保存到默认下载目录,取决于用户的浏览器设置。

    public FileResult DownloadFile(int fileId)
    {
        byte[] fileContentByteArray = YourMethodHere(fileId);
        return File(fileContentByteArray, "MIME type goes here", "Suggested file name goes here");
    }