【问题标题】:MVC RadioButtonFor groupMVC RadioButtonFor 组
【发布时间】:2012-11-22 01:42:51
【问题描述】:

我有一门 PDF 课

public class UIClonePDFDetail
    {
        public int CatalogueID { get; set; }

        public List<PDF> PDFToClone { get; set; }

    }

pdf类是:

public class PDF
    {
        public int ID{ get; set; }

        public bool Selected{ get; set; }

    }

我正在尝试创建一个单选按钮列表供用户选择 1,这会在 PDFToClone 列表中的 PDF 元素上设置 selected 属性。

Html.RadioButtonFor(model => Model.UIClonePDFDetail[Model.UIClonePDFDetail.IndexOf(stageSelection)].Selected, "stageSelection")

但这允许选择多个单选按钮。我可以看到为什么会发生这种情况,因为 Html 标记的名称元素不同。有没有办法强制他们进入同一个家庭?

【问题讨论】:

    标签: c# asp.net-mvc razor radiobuttonfor


    【解决方案1】:

    RadioButtonFor 包含一个接受 HTML 属性的重载。您可以创建一个匿名类型并像这样包含 Name 属性:

    Html.RadioButtonFor(model => Model.UIClonePDFDetail[Model.UIClonePDFDetail
              .IndexOfstageSelection)].Selected, "stageSelection", new { Name = "grp" })
    

    【讨论】:

      【解决方案2】:

      请尝试使用:

      Html.RadioButtonFor(model => 
          Model.UIClonePDFDetail[Model.UIClonePDFDetail.IndexOf(stageSelection)].Selected,
          "stageSelection")
      

      代替:

      Html.CheckBoxFor(model => 
          Model.UIClonePDFDetail[Model.UIClonePDFDetail.IndexOf(stageSelection)].Selected, 
         "stageSelection")
      

      【讨论】:

      • 对不起,我用的是radiobuttonfor,这是一个错字。还是不行。
      【解决方案3】:

      您可以尝试将 htmlAttributes 与单选按钮的组一起传递,例如:

      @Html.RadioButtonFor(model => Model.UIClonePDFDetail[Model.UIClonePDFDetail
            .IndexOfstageSelection)].Selected, "stageSelection", new { Group = "A" })
      

      【讨论】:

        猜你喜欢
        • 2011-02-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-02-21
        • 1970-01-01
        • 1970-01-01
        • 2015-11-01
        • 1970-01-01
        相关资源
        最近更新 更多