为asp.net mvc中的复选框助手设置标签值

本文关键字:设置 标签 复选框 asp net mvc | 更新日期: 2023-09-27 17:54:24

我正在开发一个asp.net mvc应用程序。

我有一个视图:

public class UserViewModel
{
    public bool IsActive {get;set;}
}

还有关联的razor视图:

<span>@Html.CheckBoxFor(d => d.IsActive)</span>

这个问题是,我只有checkbox在我的视图中没有任何label,我想知道是否有可能在CheckBoxFor参数中指示label或通过在ViewModel中添加属性在我的属性上。

为asp.net mvc中的复选框助手设置标签值

您可以使用数据注释。将它添加到ViewModel类定义的顶部

using System.ComponentModel.DataAnnotations;

IsActive属性之上添加[Display(Name = "Active")]

public class UserViewModel
{
    [Display(Name = "Active")]
    public bool IsActive {get;set;}
}        

并在视图中添加@Html.LabelFor(d => d.IsActive)

@Html.LabelFor(d => d.IsActive)<span>@Html.CheckBoxFor(d => d.IsActive)</span>

<label for="IsActive">Active</label>显示在复选框的前面。

尝试如下:

在ViewModel中添加下面的命名空间

using System.ComponentModel.DataAnnotations;

则在class属性上面使用[Display(Name="Sample Label Text")]

public class UserViewModel
{
    [Display(Name = "Sample Label Text")]
    public bool IsActive {get;set;}
}

最后使用@Html.LabelFor渲染

<span>@Html.LabelFor(d => d.IsActive)</span>
<span>@Html.CheckBoxFor(d => d.IsActive)</span>