如何使用Razor和DisplayFor在新窗口中打开链接?
我有一个DataType.Url
,
[DataType(DataType.Url)]
public string SiteUrl { get; set; }
使用@Html.DisplayFor
,这会转换为a
标记。
@Html.DisplayFor(model => item.SiteUrl)
但是我需要它在新窗口中打开。设置new {target="_blank"}
不会添加目标
@Html.DisplayFor(model => item.SiteUrl, new {target="_blank" })
只有这一页我需要在新窗口中打开的功能,所以使用JavaScript似乎有点过分。
如何在新窗口中显示要打开的链接?
答案 0 :(得分:13)
您可以通过在~/Views/Shared/DisplayTemplates/Url.cshtml
中添加具有以下内容的文件来覆盖默认模板:
<a href="@ViewData.Model" target="_blank">@ViewData.TemplateInfo.FormattedModelValue</a>