Jquery 强制pdf在新选项卡中打开
目前,我正在开发一个应用程序,其中会弹出一个对话框,显示收到的物品的详细信息(用户只需输入收到的金额)。用户输入更改(收到的金额),然后保存。保存后,我通过确认提示用户创建pdf(客户希望看到硬拷贝中的更改)。正确生成pdf并通过打开/保存/取消对话框提供给用户 我的问题是,有没有办法强制pdf自动打开,而不提示打开/保存/取消?原因是我希望能够在pdf弹出时在幕后关闭对话框,这样用户就不必自己关闭对话框 以下是我到目前为止的情况 看法 控制器Jquery 强制pdf在新选项卡中打开,jquery,asp.net-mvc-3,pdf,Jquery,Asp.net Mvc 3,Pdf,目前,我正在开发一个应用程序,其中会弹出一个对话框,显示收到的物品的详细信息(用户只需输入收到的金额)。用户输入更改(收到的金额),然后保存。保存后,我通过确认提示用户创建pdf(客户希望看到硬拷贝中的更改)。正确生成pdf并通过打开/保存/取消对话框提供给用户 我的问题是,有没有办法强制pdf自动打开,而不提示打开/保存/取消?原因是我希望能够在pdf弹出时在幕后关闭对话框,这样用户就不必自己关闭对话框 以下是我到目前为止的情况 看法 控制器 public ActionResult ViewP
public ActionResult ViewPrintOut(int POId, int PId)
{
//Make sure user has proper permissions
if (!_permissionService.Authorize(StandardPermissionProvider.ManageOrders))
return AccessDeniedView();
var purchaseOrder = _purchaseOrderService.GetPurchaseOrderById(POId);
string fileName = string.Format("purchaseorderproduct_{0}_{1}.pdf", PId, DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss"));
string filePath = System.IO.Path.Combine(this.Request.PhysicalApplicationPath, "content\\files\\ExportImport", fileName);
_pdfService.PrintPurchaseOrderProductsToPdf(purchaseOrder, PId, _workContext.WorkingLanguage, filePath);
var bytes = System.IO.File.ReadAllBytes(filePath);
return File(bytes, "application/pdf", fileName);
}
在return语句之前添加以下行
Response.AppendHeader("Content-Disposition", "inline; filename="+ filename);
并删除返回中的文件名引用
return File(bytes, "application/pdf");
将窗口位置更改为
window.open(Yoururl,'_blank');
谢谢你的回答。还有一个问题。如何使其显示在另一个选项卡中?我不想丢失用户当前所在的页面。请将target=“\u blank”添加到用于触发操作的链接(我的意思是在打印Pdf确认中),可以吗?我正在设置window.location。此pdf是自动生成的,不通过链接访问。这是我的主要问题之一。你正在通过更改window.location来覆盖当前页面。查看我的编辑。使用window.open我强制打开了一个新窗口,但是,我必须在获取pdf之前强制刷新页面。嗯,可能需要不断地改进。
window.open(Yoururl,'_blank');