自定义Razor Html属性
本文关键字:属性 Html Razor 自定义 | 更新日期: 2023-09-27 18:09:15
使用Razor html helper,添加自定义html属性似乎做得不好。
我正在编写支付网关集成和卡的详细信息需要在客户端加密。
典型的表单字段看起来像
<input type="text" data-eway-encrypt-name="EWAY_CARDNUMBER" />
我试着用
复制这个@Html.TextBoxFor(m => m.Card.CardNumber, new { @class = "form-control", @data-eway-encrypt-name = "EWAY_CARDNUMBER" })
但是没有运气,因为它会返回
CS0746:无效的匿名类型成员声明符。匿名类型成员必须使用成员赋值、简单名称或成员访问来声明。
任何想法?
不能在属性名中使用破折号。使用下划线代替,它们将自动为您转换:
@Html.TextBoxFor(
m => m.Card.CardNumber, new
{
@class = "form-control",
//@data-eway-encrypt-name = "EWAY_CARDNUMBER",
data_eway_encrypt_name = "EWAY_CARDNUMBER",
})
在下面使用:
@Html.TextBoxFor(
m => m.Card.CardNumber,
new {
@class = "form-control",
data-eway-encrypt-name = "EWAY_CARDNUMBER",
}
)
结果标记中的_
将自动转换为-
:
<input type="text" data-eway-encrypt-name="EWAY_CARDNUMBER" />