在剃刀视图中显示checkboxfor的文本

时间:2013-02-06 12:08:39

标签: razor asp.net-mvc-4

使用ASP .Net MVC 4,Razor View

我有CheckBoxFor

    <div class="editor-checkbox-field">
        @Html.CheckBoxFor(model => model.Is2ndMailBody, new { @name = "secMailBody", @id = "secMailBody", @class = "secMailBody", @onclick = "disable(this.form.secMailBody)", @value = "Create Table", @text = "Create Table" })
    </div>

但CheckBox本身正在显示。如何向文本显示CheckBox的用途?

我的模特有:

public bool IsChecked { get; set; }

javascript工作正常,css也。我只是想知道如何为这个复选框显示文字?

编辑1:

This is what is showing

我想在复选框右侧显示创建第二个邮件正文文本。

6 个答案:

答案 0 :(得分:10)

答案1:只需将字符串放在CheckBox之后,如下所示。

<div class="checkbox">
    <label>
        @Html.CheckBoxFor(m => m.Is2ndMailBody) Create Second Mail Body

    </label>
</div>

答案2:在模型中,

[Display(Name = "Create Second Mail Body")]
public bool Is2ndMailBody{ get; set; }

在视图中

<div>
    @Html.CheckBoxFor(m => m.IsChecked)
    @Html.LabelFor(m => m.Is2ndMailBody)
</div>

答案 1 :(得分:6)

首先将过滤器添加到名为DisplayAttribute

的模型中
[Display(Name = "Some Text")]
public bool IsChecked { get; set; }

您可以使用Label for model

@Html.LabelFor(model => model.Is2ndMailBody)

答案 2 :(得分:6)

您可以使用

@Html.DisplayNameFor

而不是

@Html.LabelFor 
在Alizra的回答中。这样,.label css样式将不会应用于您的文本。

答案 3 :(得分:3)

如果您使用的是bootstrap,则可以执行此操作

{{1}}

示例来自:http://getbootstrap.com/css/

答案 4 :(得分:1)

在模型类中,使用数据注释为属性

指定显示名称

您需要在模型类

之上使用此using语句
using System.ComponentModel.DataAnnotations;

然后设置“显示名称”属性

[Display(Name = "Create second mail body")]
public bool IsChecked { get; set; }

在您的视图中使用后,使用以下div标签包装复选框。如果它不是

,您将需要在视图中引用引导CSS
<div class="checkbox">
    @Html.CheckBoxFor(m => m.Is2ndMailBody, new { htmlAttributes = new { @class = "form-control" } })
    @Html.LabelFor(m => m.Is2ndMailBody, new { @class = "control-label" })
</div>

希望这会有所帮助

答案 5 :(得分:0)

你可以试试这个:

<div class="editor-checkbox-field">
<label> Create Second Mail Body @Html.CheckBoxFor(model => model.Is2ndMailBody, new { @name = "secMailBody", @id = "secMailBody", @class = "secMailBody", @onclick = "disable(this.form.secMailBody)", @value = "Create Table", @text = "Create Table" }) </label>
</div>

那是:

    <label> Your text @HTML.checkBoxFor() </label>
相关问题