单击“超链接”打开文件不起作用

时间:2013-01-08 07:32:35

标签: c# asp.net hyperlink

我想点击超链接,应该在新的弹出窗口中打开文件(无论文件)。

继承我的守则:

 HyperLink link = new HyperLink();
 link.Text = dr.Dienstleistung.Dienstleistungsart.Dienstleister.Catering_Fax_Link;
 link.NavigateUrl = HttpContext.Current.Server.MapPath("~") + "\\CUSTOM\\Upload\\picture.png";
 cell.Controls.Add(link);

但它不适用于NavigateUrl。如果我点击超链接没有任何反应。谁能帮我这个。感谢

3 个答案:

答案 0 :(得分:3)

MapPath提供物理路径而不是网址。此外,使用正确的斜杠并将目标设置为空白,以便链接在新窗口中打开。例如,

link.NavigateUrl = ResolveUrl("~/CUSTOM/Upload/picture.png");
link.Target = "_blank";

答案 1 :(得分:2)

您可以使用window.open在弹出窗口中打开该文件,而无需使用NavigateUrl属性。

link.Attributes.Add("onclick", "window.open('" + ResolveUrl("~/CUSTOM/Upload/picture.png") + "');");

答案 2 :(得分:1)

NavigateUrl是您将向用户显示的URL,而不是文件系统路径。在你的情况下应该是:

link.NavigateUrl = "~/CUSTOM/Upload/picture.png";