【问题标题】:Default radiobuttonlist in ASP.NET MVC RazorASP.NET MVC Razor 中的默认单选按钮列表
【发布时间】:2011-03-05 20:16:47
【问题描述】:

如何确保单选按钮列表选择了第一个选项?如果是基于模型属性,如果这是应用启动时显示的第一页,如何设置?

这在网络表单中很容易,但我不知道如何在 MVC 中执行此操作,而且 NET 上似乎没有任何地方可以显示这是如何完成的。

这似乎不起作用:

@Html.RadioButtonFor(m => m.SearchType, true) Location
@Html.RadioButtonFor(m => m.SearchType, false) Name

我只是取消选中了两个单选按钮??

【问题讨论】:

    标签: asp.net-mvc razor webforms


    【解决方案1】:
    @Html.RadioButtonFor(x => x.Something, "radioValue", new { @checked = true })
    

    【讨论】:

      【解决方案2】:
      @Html.RadioButtonFor(x => x.Something, "radioValue", new { @checked = "checked"})
      

      或者如果你是从模型绑定的,那么

       @Html.RadioButtonFor(x => x.Something, "radioValue", new { @checked = Model.checked})
      

      如果我们尝试这样的事情,其中​​ x.checked 从数据库绑定。不分真假。列表中的最后一个单选按钮已选中,其余的未选中。

      我们如何从数据库中绑定单选按钮列表并使其正常工作?

      【讨论】:

      • 您不能从 LINQ 表达式外部调用 x。
      • 我的道歉应该是模特
      • @Habo 您的问题将通过使用下面 GeorgeMR 答案中的语法来解决。
      【解决方案3】:

      这是我的解决方案:

      @Html.RadioButtonFor(model => model.Coin , "Dollar", Model.Coin == "$" ? (new { @checked = "checked" }) : null)
      @Html.RadioButtonFor(model => model.Coin , "Euro", Model.Coin == "E" ? (new { @checked = "checked" }) : null)
      

      【讨论】:

      • 任何理由或解释都会为您的答案提供动力。
      【解决方案4】:

      非常有趣的状态,我同意以上两个,对于还查看复选框的用户可以使用下面的示例,对于单选按钮默认我反转了数组,在我的情况下是正确的!

              <div class="row">
                  <div class="col-xs-6">
                      @for (int idx = 0; idx < Model.TldList.Count; idx++)
                      {
                          <div>
                              @Html.HiddenFor(x => Model.TldList[idx].Id)
                              @Html.CheckBoxFor(x => Model.TldList[idx].IsSelected)
                              @Html.DisplayFor(x => Model.TldList[idx].Name)
                          </div>
                      }
                  </div>
                  <div class="col-xs-6">
                      @for (int idx = Model.Period.Count-1; idx >= 0; idx--)
                      {
                          <div>
                              @Html.RadioButtonFor(x => Model.Period, Model.Period[idx].Id, new { @checked = Model.Period[idx].IsSelected })
                              <span>@Model.Period[idx].Name</span>
                          </div>
                      }
                  </div>
              </div>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-03-02
        • 2012-05-25
        • 1970-01-01
        • 2018-06-27
        • 1970-01-01
        • 2022-01-10
        • 2013-07-20
        相关资源
        最近更新 更多