剃刀中的一个标签上有多个Html.Attr?
Posted
技术标签:
【中文标题】剃刀中的一个标签上有多个Html.Attr?【英文标题】:multiple Html.Attr on one tag in razor? 【发布时间】:2012-03-07 10:22:44 【问题描述】:如何在剃刀视图中在一个标签上使用多个 html.Attr,如下所示?这不起作用。
<tr @Html.Attr("style", "color: #FF3D0D;")
@Html.Atrr("data-item", Model.ItemNumber)>
【问题讨论】:
您是否有理由需要 Html.Attr 帮助器而不是仅仅使用:<tr style="color: #FF3D0D" data-item="@Model.ItemNumber">
?
不,只是想使用提供的助手,可以吗?
它似乎是一个自定义的,但它似乎不喜欢 data- 标签,所以我做了以下操作:@Html.Attr("style", "color: #FF3D0D ;") data-item="@Model.ItemNumber"
哇。使用更冗长的语法来使用没有任何额外好处的助手,这超出了我的范围。
it doesn't seem to like the data- tag
是什么意思?你有错误吗?意外行为?这个助手是哪里来的?它是如何实施的?这个助手的目的是什么?我看不出它有什么价值。
【参考方案1】:
我也不熟悉 .Attr 帮助器,但如果您直接从视图中复制代码,则有一个错字,您有 @Html.Atrr 我猜应该是 @Html.Attr数据项
【讨论】:
【参考方案2】:所以,事情到了这个地步……
@Html.Atrr("data-item", Model.ItemNumber)
-VS-
data-item="@Model.ItemNumber"
只有一个字:不要。您的标记和地球上的每一个人都将受益于后来更直接的语法。 HtmlHelper Html.Atrr
根本没有帮助,没有价值。
另外,以下对我有用:
<body @Html.Raw("data-test1=\"1\"") @Html.Raw("date-test2=\"2\"")>
.. 并渲染:
<body data-test1="1" date-test2="2">
【讨论】:
【参考方案3】:您可能应该使用 @Html.Attr
而不是 @Html.Atrr
... 或者,正如其他人所指出的,只是显式编写属性。
【讨论】:
以上是关于剃刀中的一个标签上有多个Html.Attr?的主要内容,如果未能解决你的问题,请参考以下文章