【问题标题】:How to display pdf file in a seperate tab in a browser?如何在浏览器的单独选项卡中显示 pdf 文件?
【发布时间】:2016-09-13 18:52:01
【问题描述】:

我尝试了在网络浏览器中打开 pdf 文件的代码。它允许我通过浏览器中的 pdf 阅读器打开文件。我在互联网上找到的几乎所有代码也与此代码相同。但是这段代码并没有像我预期的那样工作。

帮我找出这里的问题。我正在使用 aspx 中的链接按钮。

这是我的代码

aspx 代码

<asp:LinkButton ID="pdfViewLOP" runat="server" Style="margin-left: 10px" OnClick="pdfViewLOP_Click" >View PDF</asp:LinkButton>      

aspx.cs

Response.Write(string.Format("<script>window.open('{0}','_blank');</script>", "viewPDF.aspx"));

应该显示pdf的新页面的代码

string name=Session["name"].ToString();
int refNo = Convert.ToInt32(name);
string FilePath = Server.MapPath("~/filesPDF/" + refNo + ".pdf");
WebClient User = new WebClient();
Byte[] buffer = User.DownloadData(FilePath);

if (buffer != null)
{
     Response.Clear();
     Response.ContentType = "application/pdf";
     Response.AddHeader("content-length", buffer.Length.ToString());
     Response.BinaryWrite(buffer);
}

【问题讨论】:

  • 只需将target="_blank" 属性添加到您的链接即可在新窗口中打开它。您无法控制每个浏览器或用户如何处理新窗口 - 您看到的选项卡实际上是新窗口
  • 哪个链接?我正在使用链接按钮,我已将其添加到链接按钮中
  • 链接按钮是&lt;a&gt; 链接

标签: c# asp.net pdf asplinkbutton


【解决方案1】:

如果你直接创建一个超链接,目标_blank和文件路径作为超链接的href。

所以html页面内部生成的结果超链接是

<a href="link_to_pdf" target="_blank">View PDF</a>

【讨论】:

  • 你不能像我已经做过的那样给我建议吗?因为此代码有效,但不适用于我的。我可能做错了。但我找不到它
  • 嗨,伙计,我不知道 asp,但我当然知道您的代码是否正在生成此 html 标记,它将完美运行。您不需要更改太多代码,您只需要删除一些不必要的代码。
猜你喜欢
  • 1970-01-01
  • 2017-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-04
  • 2021-03-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多