有没有办法使用ViewBag值在视图中填充锚标记的href
值?我希望能做的是这样的事情:
查看:
<a href="<%= ViewBag.MyURL %>" title="My URL">"<%= ViewBag.MyURL %>"</a>
控制器:
public ActionResult Index()
{
ViewBag.MyURL = "http://www.Google.com";
return View();
}
我该如何正确地做到这一点?
谢谢!
答案 0 :(得分:4)
以下是使用MVC和Razor动态更新href锚标记的方法:
控制器(如果需要,也可以在视图中的代码块中设置):
ViewBag.MyURL = "http://www.Google.com";
查看:
<a href="@Html.Raw(Html.AttributeEncode(ViewBag.MyURL))" title="@Html.Raw(Html.AttributeEncode(ViewBag.MyURL))"> @Html.Raw(Html.AttributeEncode(ViewBag.MyURL))</a>
答案 1 :(得分:2)
如果控制器中有以下内容:
ViewBag.myURL = "http://www.my-url.com";
然后在视图中你有:
@Html.Raw("<a href=\"" + ViewBag.MyURL + "\" title=\"" + ViewBag.MyURL + "\">" + ViewBag.MyURL + "</a>")
Html.Action助手通常在发布到同一网站内的另一个控制器和/或操作时使用。 Html.Raw适用于构建外部网站的链接。