选中使用jquery ASP.Net取消选中checkboxlist的所有复选框

时间:2012-03-02 13:19:05

标签: jquery asp.net

我试图以编程方式检查取消选中checkboxlist的所有选项,但我的代码无效。这是片段

 $(document).ready(function () {
    $('#myLink').click(function () {
        $("INPUT[id^='chkFileds']").attr('checked', $('#chkFileds').is(':checked'));
    });
});

我的代码有什么问题。我希望当用户点击检查超链接时,将检查复选框列表的所有选项,当再次单击同一链接时,将取消选中复选框列表的所有选项。请指导我怎么做。感谢

更新

感谢您的回答,但我不是在谈论检查而是复选框列表里面有很多复选框。它看起来像....他我给的是复选框列表的html

<table style="font-weight:bold;" id="chkCountry">
    <tbody>
        <tr>
            <td>
                <input type="checkbox" value="GB" name="chkCountry$0" id="chkCountry_0">
                <label for="chkCountry_0">UK</label>
            </td>
            <td>
                <input type="checkbox" value="US" name="chkCountry$1" id="chkCountry_1">
                <label for="chkCountry_1">USA</label>
            </td>
        </tr>
    </tbody>
</table>

2 个答案:

答案 0 :(得分:6)

您的标记仍然缺少正确回答问题所需的一些相关代码,但是,假设myLink是一个复选框,则以下代码将起作用。

$(document).ready(function () {
   $('#myLink').click(function () {
      $("INPUT[id^='chkCountry_']").attr('checked', $('#myLink').is(':checked'));
   });
});

这是a working fiddle

注意:由于多种原因,您的代码无效。主要是,您的选择器chkFileds与您以任何方式发布的标记无关。

其他信息:

以下是属性选择器运算符的快速概述:

=  is exactly equal
!= is not equal
^= starts with
$= ends with
*= contains

答案 1 :(得分:0)

如果您的选择器是正确的,并且它们看起来有点奇怪,可能是这样的:

$(document).ready(function () {
    $('#myLink').on('click', function () {
        var check = $('#chkFileds').is(':checked') ? false:true;
        $("INPUT[id^='chkFileds']").prop('checked', check);
    });
});

FIDDLE

“所有”选项究竟是什么意思,你指的是一个ID,它是独一无二的?