如何使用MVC3 Razor从Viewbag呈现HTML
我试图通过使用Viewbag传递一个表单元素到一个MVC3视图,只需将HTML写入页面…
在控制器中:
ViewBag.myData = "<input type=""hidden"" name=""example"" value=""examplevalue"">";
鉴于(我知道我可以使用一个帮手的forms):
<form action="http://exampleurl/examplepage" method="post" id="example-form"> @ViewBag.myData <input type="hidden" name="anotherexample" value="anotherexamplevalue" /> </form>
这会将myData作为HTML中的文本呈现:
<type="hidden" name="example" value="examplevalue">
所以我的问题是如何让剃刀做相当于旧的:
<%= myData %>
而不是replace<>
谢谢Paul
使用@Html.Raw(ViewBag.Mydata)
。
这应该做的工作
@Html.Raw((String)ViewBag.myData)
MSDN:此方法使用IHtmlString类包装HTML标记,该类将呈现未编码的HTML。
您需要小心接受和显示未编码的HTML。
- 我如何在asp.net mvc 3中渲染部分视图
- ASP.NET视图中的区域?
- Visual Studio 2015不语法高亮剃刀或智能感知
- 扩展AuthorizeAttribute覆盖AuthorizeCore或OnAuthorization
- 如何使用JavaScript而不是提交button发布ASP.NET MVC Ajax表单
- unit testingASP.Net MVC授权属性validationredirect到login页面
- 在redirect之前设置Viewbag
- 在ASP.NET MVC模型中调用UrlHelper
- 如何redirect到ASP.NET MVC中的dynamicloginURL