我定义了一个自定义 html 属性“data-something-something”。在我看来,我使用 Html 扩展方法来创建例如一个文本框。其中一个参数是一个匿名的 object HtmlAttributes
。我想传递这个值:new { data-something-something = "value"}
。但是,data-something-something
不被 .NET 识别为属性名称,因为有连字符。
我现在将其更改为 dataSomethingSomething
,但我想根据 HTML 5 标准定义我的自定义属性(即在其前面加上“data-”)。
我之前在尝试对类属性执行 new { class = "class-name"}
时遇到过类似的问题。对于这种情况,我发现我可以在 class
前加上一个“@”符号以使其工作(即 new { @class = "class-name"}
)。因为有针对这种情况的解决方案,所以我希望可能有针对我当前问题的解决方案(用“@”作为前缀不起作用)。
提前致谢。
最佳答案
尝试使用下划线,标准 HTML 帮助程序会自动将其转换为破折号:
new { data_something_something = "value" }
关于c# - 在 ASP.NET MVC 中设置包含连字符的 html 属性时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5139564/