>我有使用htmlhelper创建的表单的以下部分:
<div class="form-group">
@Html.LabelFor(model => model.ColorCode, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ColorCode, new {htmlAttributes = new { @class = "form-control" } })
<!--<input type="color" class="form-control"/>-->
@Html.ValidationMessageFor(model => model.ColorCode, "", new {@class = "text-danger"})
</div>
</div>
ColorCode
的数据类型是字符串,因此默认情况下它只创建一个普通文本框。我想要的是让输入表现为颜色选择器。注释的 html 本质上是我希望它创建的(+ 如果适用,将其连接到表单所需的任何属性。我不是HTML专家)。有没有办法做到这一点?我无法通过搜索找到有关它的任何信息。
你可以尝试这样的事情:
@Html.TextBoxFor(model => model.ColorCode, new {@class="form-control", type="color"})
EditorFor
将使用编辑器模板生成 html 输出。要使用它,您必须为该特定属性类型定义一个编辑器模板,但由于这是一个string
它有点通用。
穆克@Stephen也在评论中指出了这一点。