【问题标题】:How do I make CheckBox in ASP.NET MVC 4 (Edit Version)如何在 ASP.NET MVC 4(编辑版本)中制作 CheckBox
【发布时间】:2018-04-14 12:05:05
【问题描述】:

我想在我的编辑视图中输入类型输入复选框,

这是我的模型

public partial class iseng
{
    public int Id { get; set; }
    public string hobi1 { get; set; }
    public string hobi2 { get; set; }
    public string hobi3 { get; set; }
}

这是我的 Razor 视图

<label>Hobi:</label>
        @Html.CheckBoxFor(x => x.iseng.hobi1, "Makan")
        @Html.CheckBoxFor(x => x.iseng.hobi2, "Minum")
        @Html.CheckBoxFor(x => x.iseng.hobi3, "Tidur")

我该如何解决?

【问题讨论】:

  • CheckBoxFor() 用于绑定到bool,而不是string
  • soo,我只是将字符串更改为 bool ? @StephenMuecke
  • 是的,然后它的@Html.CheckBoxFor(x =&gt; x.hobi1) - 你的第二个参数没有意义 - 添加html属性并会导致length="5"
  • 你能写代码吗,@StephenMuecke

标签: asp.net asp.net-mvc asp.net-mvc-4 razor


【解决方案1】:
Please try this one

public partial class iseng
{
    public int Id { get; set; }
    public bool hobi1 { get; set; }
    public bool hobi2 { get; set; }
    public bool hobi3 { get; set; }
}

    @Html.CheckBoxFor(x => x.hobi1, "Makan")
        @Html.CheckBoxFor(x => x.hobi2, "Minum")
        @Html.CheckBoxFor(x => x.hobi3, "Tidur")

or use like this

@Html.CheckBox("id", true)

【讨论】:

    【解决方案2】:
    @Html.EditorFor(x => x.Remember)
    

    将生成:

    <input id="Remember" type="checkbox" value="true" name="Remember" />
    <input type="hidden" value="false" name="Remember" />
    

    它是如何工作的:

    如果未选中复选框,则仅隐藏表单提交(false) 如果选中,则表单提交两个字段(false 和 true),MVC 为 bool 属性设置 true

      <input id="Remember" name="Remember" type="checkbox 
      value="@Model.Remember"/>
    

    如果选中,这将始终发送默认值

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-02-15
      • 1970-01-01
      • 2015-08-10
      • 2019-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多