asp.net Jquery checkall /取消选中所有复选框

时间:2013-10-10 00:15:15

标签: jquery

我有一个LinkBut​​ton(下面)名称“Insert?”,它触发Jquery检查我的DataList1中的所有复选框。它到目前为止工作。

但我想点击相同的LinkBut​​ton,它将取消选中之前选中的所有复选框。基本上,它将在checkall和uncheck all之间切换。

<asp:LinkButton ID="ENameLinkBtn" runat="server"  OnClientClick="javascript:SelectAllCheckboxes1(this)" >Insert?</asp:LinkButton>

Jquery只能运行checkAll,但不能运行uncheckAll

<script type="text/javascript">
    function SelectAllCheckboxes1(chk) {
        $('#<%=DataList1.ClientID%>').find("input:checkbox").each(function () {
            //alert(this.id);
            this.checked = true; 
        });
    }
</script>

请帮忙。 谢谢,

2 个答案:

答案 0 :(得分:1)

由于它是一个链接,你可以做的是

function SelectAllCheckboxes1(chk) {
    var $checks = $('#<%=DataList1.ClientID%>').find("input:checkbox");
    $checks.prop('checked', $checks.not(':checked').length != 0);
}

演示:Fiddle

答案 1 :(得分:1)

考虑到你的问题中有一个jQuery标记,我假设你可以在点击你的ID元素时使用这个命令。您不需要任何ASP.NET服务器端操作。

<强> http://jsfiddle.net/879Pv/1/

$("#ENameLinkBtn").click(function(){
   $(document.body).find(':checked').each(function() {
      $(this).removeAttr('checked');
   });
});