jquery获取单选按钮选择

时间:2012-12-31 21:47:46

标签: jquery

我正在学习jquery,似乎无法找到我需要从asp.net radiobuttonlist中的单选按钮列表中获取所选单选按钮的值。

这是标记;

 <fieldset style="width:50%;">
        <legend>Select one option below</legend>
        <div id="radioContactTasks">
            <asp:RadioButtonList ID="rblAddEditContact" runat="server"
                         RepeatDirection="Vertical" 
                         CssClass="registerradio" TextAlign="Left">
                <asp:ListItem Text="Add New Contact" />
                <asp:ListItem Text="Edit Existing Contact" />
                <asp:ListItem Text="Delete Existing Contact" />
            </asp:RadioButtonList>
        </div>
    </fieldset>

我尝试了各种方法,没有工作。这是最新的变化,只是提醒我选择了什么。

$(document).ready(function () {
        $("#rblAddEditContact").on("change", ":radio", function () {
            alert($(this).siblings("label").value);
        });
    });

这是渲染的html

<fieldset style="width:45%;">
    <legend>Add New or Edit Exisiting Contacts</legend>
    <fieldset style="width:50%;">
        <legend>Select one option below</legend>
        <div id="radioContactTasks">
            <table id="MainContent_rblAddEditContact" class="registerradio">
<tr>
    <td><label for="MainContent_rblAddEditContact_0">Add New Contact</label><input id="MainContent_rblAddEditContact_0" type="radio" name="ctl00$MainContent$rblAddEditContact" value="Add New Contact" /></td>
</tr><tr>
    <td><label for="MainContent_rblAddEditContact_1">Edit Existing Contact</label><input id="MainContent_rblAddEditContact_1" type="radio" name="ctl00$MainContent$rblAddEditContact" value="Edit Existing Contact" /></td>
</tr><tr>
    <td><label for="MainContent_rblAddEditContact_2">Delete Existing Contact</label><input id="MainContent_rblAddEditContact_2" type="radio" name="ctl00$MainContent$rblAddEditContact" value="Delete Existing Contact" /></td>
</tr>

                     

3 个答案:

答案 0 :(得分:1)

可能的解决方案是

$('input[type=radio]:checked').val();

或者稍微长一点但是相同,也应该起作用

$('input[type=radio]').filter(':checked').val();

随时随地获取

答案 1 :(得分:0)

$(document).ready(function () {    
    $('#MainContent_rblAddEditContact input[type=radio]').change(function(){
      alert( $(this).val() );
    });
});

现场演示:http://codepen.io/joe/pen/DJleG

答案 2 :(得分:0)

如果您的radio按钮有value这样的

<input type="radio" value="rdo-1" name="radio1" />

然后你可以尝试这个来获得rdo-1

$("#radioContactTasks [type='radio']").on("change", function () {
    alert($(this).val()); // rdo-1
});

Example

否则,如果您的radio按钮是这样的,没有值属性

<input type="radio" name="radio1" />

然后我认为您不需要上面的代码,因为在命名组中只能选择一个radio按钮,其值可以是onoff,在这种情况下{处理程序内的{1}}始终为$(this),其值为checked

Example

或者,如果您需要在on处理程序之外获取radio按钮的选中值,则可以使用此

change

Example

P / S:如果现在还有混淆,我建议你发布浏览器提供的源代码。