你如何使用jQuery获取asp:单选按钮的选中值?

时间:2009-10-08 23:48:50

标签: c# asp.net jquery radio-button checked

我需要做这样的事情:

<asp:RadioButton ID="rbDate" runat="server" Text="Date" GroupName="grpPrimary" />

并且能够在jQuery中检查单选按钮的检查值的值,但是我的尝试不会返回true / false。

if ($('[name=rbDate]').attr("Checked"))

if ($('[name=rbDate]').attr("Checked").val())

if ($('[name=rbDate]:checked').val())

一点帮助?

4 个答案:

答案 0 :(得分:18)

这可能是最简单的方法。 * = 搜索 rbDate 的整个id属性,该属性负责整个ASP.NET ID修改。

$('input[id*=rbDate]').is(":checked");

答案 1 :(得分:5)

虽然ChaosPandion's answer可行,但将RadioButtonList包裹在这样的div中会更快:

<div id="dateWrapper">
    <asp:RadioButton 
        ID="rbDate" 
        runat="server" 
        Text="Date" 
        GroupName="grpPrimary" />
</div>

然后你的jQuery代码就这么简单:

var selected = $("#dateWrapper input:radio:checked");

答案 2 :(得分:2)

INamingContainer将一堆东西添加到实际html的id的开头。

$('input[id$=rbDate]').attr('checked')

使用选择器上的[id $ = rbDate]位告诉jQuery你希望输入的id以rbDate结尾

现在,如果你想要获得整个列表的选定值,那么你可能会做类似的事情

$('input[name$=rbDate]:checked').val()

,其中一个选中的项目将返回所选项的值,或者,在该单选按钮列表中。

答案 3 :(得分:0)

这是我使用asp.net ID的JQuery解决方案:

 $('.slide')
      .css('height', $alert.height())
      .css('overflow', 'hidden')
      .transition({height: '0px'});