Javascript 如何让浏览器在新选项卡中打开pdf,而不只是下载?
我有一个下载按钮和一个查看按钮。该文件通过返回FileResult的MVC控制器函数下载 控制器功能如下所示:Javascript 如何让浏览器在新选项卡中打开pdf,而不只是下载?,javascript,asp.net-mvc,Javascript,Asp.net Mvc,我有一个下载按钮和一个查看按钮。该文件通过返回FileResult的MVC控制器函数下载 控制器功能如下所示: public FileResult DownloadStatement(Guid statementID) { StatementFileModel statementFile = BL.GetStatementByID(statementID); byte[] fileBytes = statementFile.FileData;
public FileResult DownloadStatement(Guid statementID) {
StatementFileModel statementFile = BL.GetStatementByID(statementID);
byte[] fileBytes = statementFile.FileData;
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "attachment;filename=" + statementFile.FileName);
Response.BinaryWrite(fileBytes);
return File(fileBytes, "application/pdf");
}
以下内容非常适合在不打开浏览器的情况下立即下载PDF:
window.location.href = "/DownloadStatement?statementID=" + statementID;
但是我在查看按钮上遇到了问题。我尝试了以下方法,但它也只是下载PDF,而没有在浏览器中打开它:
window.open("/DownloadStatement?statementID=" + statementID, '_blank', 'fullscreen=yes');
Content-Disposition:attachment
标题告诉浏览器下载文件。单击“查看”按钮时不要发送标题值(附件
),浏览器应该显示PDF而不是下载它
完全省略标题,或发送
内容处置:内联
,就足够了。标题内容处置:附件
告诉浏览器下载文件。单击“查看”按钮时不要发送标题值(附件
),浏览器应该显示PDF而不是下载它
完全省略标题或发送内容处置:inline
,就足够了。使用标题(“内容处置”、“附件;文件名=“+statementFile.filename”)
供下载使用
标题(“内容配置”、“内联;文件名=“+statementFile.filename”)代码>在浏览器中打开它:使用
标题(“内容处置”、“附件;文件名=“+statementFile.filename”)
供下载
使用
标题(“内容配置”、“内联;文件名=“+statementFile.filename”)代码>要在浏览器中打开它,请执行以下操作: