如何将html5数据属性添加到MVC EditorFor字段。我知道我可以添加这样的属性:
@Html.EditorFor(p => model.test, new { disabled = "disabled"})
但是当我想对data- *属性做同样的事情时,这是这个元素的正确html5语法我得到一个错误! 例如:
@Html.EditorFor(p => model.test, new { data-test= "test" })
这是我收到的错误
无效的匿名类型成员声明符。必须使用成员分配,简单名称或成员访问声明匿名类型成员。
当前上下文中不存在名称“数据”
当前上下文中不存在名称'test'
答案 0 :(得分:0)
EditorFor
不接受htmlAttributes
参数。第二个参数实际上是用于其他视图数据。换句话说,您在那里传递的匿名对象的成员将仅添加到ViewData
字典,即ViewData["disabled"] == "disabled"
。在自定义编辑器模板中,您可以使用这些值生成HTML或其他任何内容,但这些都不会自动生成。