MVC RadioButtonFor

时间:2013-02-19 16:45:43

标签: asp.net-mvc razor

我有以下内容:

     <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是一个字符串。

    public string TotalCol { get; set; }

我使用以下内容来获取值:

    var TotalCo = $('#TotalCol').val();
    alert(TotalCo);

警报显示是。

如果我在提交表格时发出警报而未选择是或否,我仍然 得到是的。这是为什么。为什么不回复空白。

提前致谢

2 个答案:

答案 0 :(得分:0)

通过查看代码,我看到你的RadioButtons实际上被“分组”在一起作为#TotalCol,因此jquery只能抓取第一个元素并显示来自该组特定元素的val。例如,如果你要反转这个,你会得到相反的结果(警报会像这样返回“否”):

@Html.RadioButtonFor(m => m.TotalCol, "No") @Html.Label("No")
@Html.RadioButtonFor(m => m.TotalCol, "Yes")  @Html.Label("Yes")&nbsp;&nbsp;

我希望这有任何意义:)

答案 1 :(得分:0)

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

示例:

 $('#TotalCol:checked').val();

 $('input[name=TotalCol]:checked').val();
相关问题