css - 除了输入 (Html.EditorFor) 之外,元素上还需要 MVC 数据值

标签 css asp.net-mvc html-helper

在 MVC 中,当我创建一个带有“必需”属性的模型时,我在 HTML 标记中为该属性创建了一个 EditorFor(输入框),它会自动神奇地添加“data-val-required”CSS属性,我可以随心所欲地设置输入框的样式。

假设我在该输入框之前有一个标题,我如何检测它关联的编辑器是否是必填字段,以便我可以设置标题的样式(将其设为红色或在前面添加一个星号它)而不是输入?

<td>Heading I want to style</td>
<td>@Html.EditorFor(model => model.requiredfield)</td>

最佳答案

您可以按如下方式实现:

在模型中为属性设置 DisplayName 属性如下:

public class ModelName
{
    [Required]
    [DisplayName("Label Text")]
    public string propertyName { get; set; }
 }

然后在 View 中,您可以按如下方式为您的编辑器标签添加类:

<td>@Html.LabelFor(model => model.propertyName , new { @class= "className" })</td>
<td>@Html.EditorFor(model => model.propertyName )</td>

上面的标签将呈现如下:

<label for="propertyName " class="className">Label Text</label>

因此,现在您可以根据需要设置编辑器标签的样式。

关于css - 除了输入 (Html.EditorFor) 之外,元素上还需要 MVC 数据值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18596701/

相关文章:

c# - 移动设备 _Layout.Mobile.cshtml 和 iPad

c# - MVC 中的元组在重定向后变空

c# - 在区域内的 View 中使用 MVC HtmlHelper 扩展方法

c# - 带有 Html Helper 的条件 html 属性

c# - 在 MVC HTML Helper 中将 Javascript 代码与 HTML 一起注入(inject)

jquery - 如何简化我的 Jquery 代码

css - 有什么方法可以获得特定于断点的宽度类?

jquery - 复杂表 - 特定于目标 <TR>

javascript - 使用按钮 javascript 的随机卡片/图像

c# - Asp.net vNext 中的 Thread.Sleep