如何在checkboxList中获取所选复选框的值?

时间:2010-06-03 08:07:34

标签: c# asp.net jquery

我想知道下面标记的选定值。因此,如果选中了其中一​​个复选框,我可以禁用文本框。

    <asp:CheckBoxList ID="ChkTest" runat="server" RepeatDirection="Horizontal" CssClass="toggleYesNo">
        <asp:ListItem Value="1">Yes</asp:ListItem>
        <asp:ListItem Value="0">No</asp:ListItem>
    </asp:CheckBoxList>

我尝试使用此功能似乎无法正常工作

$(document).ready(function() {
    $("#<%=ChkTest.ClientID %>").click(function() {
        value = $(this).val();
        if(value=='1') {
            $('#atextbox').attr('disabled','');
         }
         else {
            $('#atextbox').attr('disabled','disabled');
         }           

    });
});

我还跟踪输出HTML,但是ID为分配给表的CheckBoxList。

已更新

<table id="ChkTest" class="toggleYesNo" border="0">
    <tr>
        <td><input id="ChkTest_0" type="checkbox" name="ChkTest$0" /><label for="ChkTest_0">Yes</label></td><td><input id="ChkTest_1" type="checkbox" name="ChkTest$1" /><label for="ChkTest_1">No</label></td>
    </tr>
</table>

3 个答案:

答案 0 :(得分:1)

好的,我解决了它

我的jQuery函数是

$(document).ready(function() {
    $("#<%=ChkTest.ClientID %> input").click(function() {
        value = $(this).attr('checked');
        if(value==true) {
            $("#TxtName").removeAttr("disabled");
        }
        else {
            $("#TxtName").val('');
            $("#TxtName").attr("disabled","disabled");
        }    
    });
});

这完全解决了它

答案 1 :(得分:0)

它可能是选择器;你能尝试改变

吗?
$("#<%=ChkTest.ClientID %>").click(function() {

要:

$('.ToggleYesNo').click(function() {

如果这没有帮助,你可以用你得到的输出评论:

alert($("#<%=ChkTest.ClientID %>"));
alert($('.ToggleYesNo'));

答案 2 :(得分:0)

$(document).ready(function() {
    $("#ChkTest").click(function() {
        value = $(this).find(':checked').val();
        if(value=='1') {
            $('#atextbox').attr('disabled','');
         }
         else {
            $('#atextbox').attr('disabled','disabled');
         }           

    });
});

编辑基于OP的更新

$(document).ready(function() {
    $("#ChkTest :checkbox").click(function() {
        value = $(this).next().text().toLowerCase();
        if(value=='yes') {
            $('#atextbox').attr('disabled','');
         }
         else {
            $('#atextbox').attr('disabled','disabled');
         }           

    });
});