asp.net-mvc - 如何在razor中插入 '_'作为htmlAttributes?

标签 asp.net-mvc razor

这可能是一个简单的问题,但我还没有找到答案。

在 razor 中创建 HtmlElement 时如何转义“_”?

为了在最终的 Html 中呈现“-”,我们放置了“_”,但是要呈现“_”(下划线),我们如何转义它?我尝试了“@:”,但它不起作用,并且没有找到任何其他选项...

示例:

 @Html.CheckBox("Access_Groups", false, new
                   {
                       @class = "input-control checkbox",
                       @data_group = "I', looking for data-group",
                       @Description_pt = "<----- I'm looking for Description_pt"
                   })

@data_group 将按预期呈现为数据组,但是... @Description_pt 将呈现为 Description-pt,这不是预期的(不知道如何转义 _) 谢谢

最佳答案

如果你看signature of Html.Checkbox ,我们可以看到它需要一个对象 htmlAttributes 。此外,查看语法,它实际上是一个基于键的对象集合。一个Dictionary<string,object>符合这一要求,并允许您绝对指定要添加的 html 属性的名称(请注意,每个键的键入完全符合我们希望其显示的方式)。

@Html.CheckBox("Access_Groups", false, new Dictionary<string,object>
{{"class", "input-control checkbox"},
{"data-group", "I', looking for data-group"}, 
{"Description_pt", "SomeValue"}})

这将呈现以下 HTML

    <input Description_pt="SomeValue" class="input-control checkbox"
data-group="I&#39;, looking for data-group" id="Access_Groups" 
name="Access_Groups" type="checkbox" value="true" />

关于asp.net-mvc - 如何在razor中插入 '_'作为htmlAttributes?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34502622/

相关文章:

ASP.NET MVC 使用 AJAX 加载页面

asp.net-mvc - ASP.NET MVC Controller 的代码中应该测试什么?

Razor - Foreach 中的变量

asp.net - 使用 ASP.NET MVC 进行模型绑定(bind)内部嵌套模型

jquery - 使用 jQuery ajax post 覆盖表单提交事件

c# - ViewStart 和 Layout - 有什么区别?

c# - .NET 的缓存服务器(例如 Memcached)

javascript - 如何在另一个函数中获取 $.each 函数值

asp.net-mvc - 如何将 Orchard CMS 与当前的 MVC2 应用程序集成?

c# - 如何读取 html 帮助元素的名称