Razor输入元素自定义属性

时间:2016-12-29 19:46:53

标签: asp.net-mvc razor

您好我需要做以下事情:

@Html.TextBoxFor(m => m.Login, 
                 new { 
                       @class = "form-control", 
                       @placeholder = "Username", 
                       required="true" data-required-message="Please insert your name" 
                     })

但我在data-required-message上收到错误似乎我不能使用“ - ”。

  

有任何线索吗?

2 个答案:

答案 0 :(得分:4)

你必须使用下划线_,razor会在html中将其呈现为-

data_required_message="Please insert your name"
另外需要注意的是,您不需要在@的每个参数前放置htmlAttributes符号,我们将其放在class上,因为class c#中的保留字,因此不能直接用作变量名。

您的最终代码将如下:

@Html.TextBoxFor(m => m.Login, 
                 htmlAttributes: new { 
                                       @class = "form-control",
                                       placeholder = "Username",
                                       required="true",
                                       data_required_message="Please insert your name" 
                                     })

您在placeholder属性后也缺少逗号。

答案 1 :(得分:0)

尝试使用data_required_message代替data-required-message