由两个单选按钮组成的组在使用html帮助程序时不起作用

由两个单选按钮组成的组在使用html帮助程序时不起作用,html,css,asp.net-mvc,radio-button,Html,Css,Asp.net Mvc,Radio Button,在ASP.NETMVC项目中,我在HTML表单中使用了两个单选按钮 这是我的模型 [Display(Name = "Gender")] public string gender { get; set; } 在视图中,我使用html助手声明了两个单选按钮 <label class="col-sm-3 control-label">@Html.LabelFor(a => a.gender)</label> <div cla

在ASP.NETMVC项目中,我在HTML表单中使用了两个单选按钮

这是我的模型

[Display(Name = "Gender")]
public string gender { get; set; }
在视图中,我使用html助手声明了两个单选按钮

<label class="col-sm-3 control-label">@Html.LabelFor(a => a.gender)</label>
<div class="col-sm-9 row">
    <div class="radio-btn pull-left mRight-20">
        @Html.RadioButtonFor(model => model.gender, "male")
        @Html.LabelFor(a => a.gender, "Male")
    </div>
    <div class="radio-btn pull-left">
        @Html.RadioButtonFor(model => model.gender, "female")
        @Html.LabelFor(a => a.gender, "Female")
    </div>
</div>
@Html.LabelFor(a=>a.gender)
@Html.radioButton(model=>model.gender,“男性”)
@LabelFor(a=>a.gender,“男性”)
@Html.radioButton(model=>model.gender,“女性”)
@LabelFor(a=>a.gender,“女性”)

问题是我只能点击一个按钮,即男性单选按钮。当我点击女性单选按钮时,男性也会被点击。女性单选按钮不可单击。知道为什么吗?

这是由于
标签
控件的
属性导致的。您可以使用以下代码来解决此问题:

<label class="col-sm-3 control-label">@Html.LabelFor(a => a.gender)</label>
        <div class="col-sm-9 row">
            <div class="radio-btn pull-left mRight-20">
                @Html.RadioButtonFor(model => model.gender, "male", new { @id="genderMale"})
                <label for="genderMale">Male</label>
            </div>
            <div class="radio-btn pull-left">
                @Html.RadioButtonFor(model => model.gender, "female", new { @id = "genderFemale" })
                <label for="genderFemale">Female</label>
            </div>
        </div>
@Html.LabelFor(a=>a.gender)
@RadioButton(model=>model.gender,“男性”,新的{@id=“genderMale”})
男性
@RadioButton(model=>model.gender,“女性”,新的{@id=“genderFemale”})
女性

此外,由于单选按钮已绑定到模型,因此未选中该按钮。所以,如果您在模型中指定性别值,如
model.gender=“male”然后它将设置相关单选按钮的值。

谢谢@Manprit Singh Sahota,它解决了我的问题。