我有以下用于显示文本框和密码的剃刀代码
@Html.EditorFor(model => model.LoginName, new { htmlAttributes = new { @class = "form-control" } })
@Html.PasswordFor(model => model.LoginPassword, new { htmlAttributes = new { @class = "form-control" } })
但是,渲染时,文本框的外观与密码文本框不同。为什么两个班级相同?
上述两行之间没有任何css引用,因此对这种不一致感到疑惑。
有没有人遇到这个问题?我不想为密码文本框编写一个自定义css,看起来像用户名文本框。
谢谢
答案 0 :(得分:15)
将@Html.PasswordFor
的语法更改为我在下面显示的内容,它将正确应用您的课程。
@Html.EditorFor(model => model.LoginName, new { htmlAttributes = new { @class = "form-control" } })
@Html.PasswordFor(model => model.LoginPassword, new { @class = "form-control" })
原因是second argument for EditorFor
is object additionalViewData
,second argument for PasswordFor
is object htmlAttributes
。