首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC @Html.RadioButtonfor

MVC @Html.RadioButtonfor
EN

Stack Overflow用户
提问于 2017-02-16 02:11:05
回答 1查看 715关注 0票数 0

我有2个单选按钮,在验证失败后,“提交”button.The性别值(string类型)没有按照先前的选择进行选择。

代码语言:javascript
复制
Male @Html.RadioButtonFor(model => model.gender)
Female @Html.RadioButtonFor(model => model.gender)

没有选择单选按钮,而我的所有其他文本框都保留它的值,但性别除外

EN

回答 1

Stack Overflow用户

发布于 2017-02-16 02:41:50

您没有为单选按钮设置value属性。如果它们没有value,则说明"on“被发布,并且在您的控制器方法中,您的模型将被绑定到gender = "on"。当您返回视图时,您的单选按钮中没有一个与"on"匹配,因此没有选择。

更改视图以添加单选按钮的值。

代码语言:javascript
复制
<label>
    @Html.RadioButtonFor(m => m.gender, "Male", new { id = "" })
    <span>Male</span>
</label>
<label>
    @Html.RadioButtonFor(m => m.gender, "Female", new { id = "" })
    <span>Female</span>
</label>

<label>元素意味着用户可以单击关联的文本来选择一个按钮,而new { id = "" }将删除id属性,否则将创建无效的html (重复的id属性)。

此外,您应该考虑对属性使用enum而不是string

代码语言:javascript
复制
public enum Gender
{
    Male,
    Female
}

所以财产是

代码语言:javascript
复制
public Gender Gender { get; set; }

在视图中(假设您已经为枚举包含了一个using语句)

代码语言:javascript
复制
<label>
    @Html.RadioButtonFor(m => m.Gender, Gender.Male, new { id = "" })
    <span>@Gender.Male</span>
</label>

链接到规范 (用于单选按钮和复选框)

违约/开启 在获取时,如果元素具有值属性,则必须返回该属性的值;否则,必须返回" On "字符串。在设置时,它必须将元素的value属性设置为新值。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42263559

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档