首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC RadioButtonFor

MVC RadioButtonFor
EN

Stack Overflow用户
提问于 2013-02-20 00:45:43
回答 2查看 3.2K关注 0票数 0

我有以下一些东西:

代码语言:javascript
复制
     <div class="editor-field">
       @Html.RadioButtonFor(m => m.TotalCol, "Yes")  @Html.Label("Yes")&nbsp;&nbsp; 
       @Html.RadioButtonFor(m => m.TotalCol, "No") @Html.Label("No")

请注意,TotalCol是一个字符串。

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

我使用以下代码来获取该值:

代码语言:javascript
复制
    var TotalCo = $('#TotalCol').val();
    alert(TotalCo);

警报显示为Yes。

如果我在未选择Yes或No的情况下在提交表单时发出警报,我仍然会得到Yes。为什么会这样呢。为什么它不直接返回空白。

提前感谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-20 01:12:23

通过查看您的代码,我发现您的RadioButtons实际上被“分组”在一起,即#TotalCol,因此jquery只能获取第一个元素,并为您显示该组中该特定元素的val。例如,如果您要反转这一点,您将得到相反的结果(alert将返回"No“,如下所示):

代码语言:javascript
复制
@Html.RadioButtonFor(m => m.TotalCol, "No") @Html.Label("No")
@Html.RadioButtonFor(m => m.TotalCol, "Yes")  @Html.Label("Yes")&nbsp;&nbsp;

我希望这是有意义的:)

票数 0
EN

Stack Overflow用户

发布于 2013-02-20 01:21:23

当您有两个具有相同名称(或ID)的单选按钮时,您需要找出选择了哪一个。您可以通过使用选择器:checked来完成此操作。

示例:

代码语言:javascript
复制
 $('#TotalCol:checked').val();

代码语言:javascript
复制
 $('input[name=TotalCol]:checked').val();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14962849

复制
相关文章

相似问题

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