MVC Razor单选按钮

Nan*_*anu 52 .net c# asp.net-mvc razor asp.net-mvc-3

在局部视图中, 我使用像这样的文本框.

@model Dictionary<string, string>
@Html.TextBox("XYZ", @Model["XYZ"])
Run Code Online (Sandbox Code Playgroud)

如何生成单选按钮,并在表单集合中获得所需的值为YES/NO True/False)?目前,如果我选择下面的任何值,我将为"ABC"取消.

   <label>@Html.RadioButton("ABC", @Model["ABC"])Yes</label>
   <label>@Html.RadioButton("ABC", @Model["ABC"])No</label>
Run Code Online (Sandbox Code Playgroud)

调节器

        public int Create(int Id, Dictionary<string, string> formValues)
        {
         //Something Something
        }
Run Code Online (Sandbox Code Playgroud)

mat*_*mmo 63

为了对多个项目执行此操作,请执行以下操作:

foreach (var item in Model)
{
    @Html.RadioButtonFor(m => m.item, "Yes") @:Yes
    @Html.RadioButtonFor(m => m.item, "No") @:No
}
Run Code Online (Sandbox Code Playgroud)

  • @MichaelBrennt"@:"用于打破Razor,类似于`<text>`标签为Yes和No基本上是HTML /非C#代码(根据您的结构,您可能不需要它). (3认同)

Kuq*_*uqd 23

简单地说

   <label>@Html.RadioButton("ABC", True)Yes</label>
   <label>@Html.RadioButton("ABC", False)No</label>
Run Code Online (Sandbox Code Playgroud)

但是你应该总是使用cacho建议的强类型模型.


Cac*_*nta 14

我用这个答案解决了同样的问题.

基本上它将单选按钮绑定到强类型模型的布尔属性.

@Html.RadioButton("blah", !Model.blah) Yes 
@Html.RadioButton("blah", Model.blah) No 
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你!


Anj*_*ant 13

我这样做的方式如下:

  @Html.RadioButtonFor(model => model.Gender, "M", false)@Html.Label("Male")
  @Html.RadioButtonFor(model => model.Gender, "F", false)@Html.Label("Female")
Run Code Online (Sandbox Code Playgroud)


Nan*_*anu 8

<label>@Html.RadioButton("ABC", "YES")Yes</label>
<label>@Html.RadioButton("ABC", "NO")No</label>
Run Code Online (Sandbox Code Playgroud)


Deb*_*ash 6

MVC Razor 提供了一个优雅的 Html Helper,称为RadioButton,它有两个参数(这是通用的,但我们可以重载它最多五个参数),即一个是组名称,另一个是值

<div class="col-md-10">
    Male:   @Html.RadioButton("Gender", "Male")
    Female: @Html.RadioButton("Gender", "Female")
</div>                         
Run Code Online (Sandbox Code Playgroud)


Pra*_*lva 6

MVC5剃刀视图

下面的示例还将标签与单选按钮相关联(单击相关标签后将选择单选按钮)

// replace "Yes", "No" --> with, true, false if needed
@Html.RadioButtonFor(m => m.Compatible, "Yes", new { id = "compatible" })
@Html.Label("compatible", "Compatible")

@Html.RadioButtonFor(m => m.Compatible, "No", new { id = "notcompatible" })
@Html.Label("notcompatible", "Not Compatible")
Run Code Online (Sandbox Code Playgroud)