ASP.NET列表中checkbox批量操作

<input type="checkbox" name="chkChild" id="<%#Eval("FID") %>" />  //每一行的checkbox列

<div class="pagination_1">
      <input id="ckAll" type="checkbox" name="chkA" /><label for="ckAll">全选</label>   //最下面的全选checkbox
</div>

<a href="#" onclick="delChecked(<%=pageIndex %>)"><div class="button_2">删除</div></a>  //删除按钮

<input type="hidden" id="hdclicks" value="0" />  //隐藏的,用于保存数值 

上面是HTML代码

 

JS代码:

  • 点击“全选”的checkbox所有的checkbox都显示选中状态:
 //全选
    $("input[name=chkA]").click(function () {
        $("input[name=chkChild]").attr("checked", $(this).attr("checked")); //选中全部信息
        var flag = $(this).attr("checked");
     $(
"input[name=chkA]").each(function () {//选择下面的全选框 $(this).attr("checked", flag); }); });
  • 选择上面列表中的checkbox最下面的“全选”发生变化:
//选中信息
    $("input[name=chkChild]").click(function () {
        if (!$(this).attr("checked"))   //当前记录未选中,全选不选中
            $("input[name=chkA]").each(function () {
                $(this).attr("checked", false);
            });
        else//当前记录选中
        {
            var flag = true;
            var $inputs = $("input[name=chkChild]");
            for (var i = 0; i < $inputs.length; i++) {
                if (!$($inputs[i]).attr("checked")) {
                    flag = false;
                    break;
                }
            }
            $("input[name=chkA]").each(function () {
                $(this).attr("checked", flag);
            });
        }
    });
  • 批量删除:
//批量删除
function delChecked(page) {
    var times = $("#hdclicks").val();
    $("#hdclicks").val(times + 1);
    times = $("#hdclicks").val();
    if (times > 1)   //解决操作过程中重复操作!!!
    {
        alert("正在处理,请稍后操作");
        return false;
    }
    var msg = "警告:此操作不可恢复!!\r您真的要删除吗?";
    var alertmsg = "请选择要删除的信息!";
    var $inputs = $("input[name=chkChild]");
    var keyId = "";
    for (var i = 0; i < $inputs.length; i++) {
        if ($($inputs[i]).attr("checked")) {
            keyId = keyId + $($inputs[i]).attr("id") + ",";
        }
    }
    if (keyId.length > 0) {
        if (confirm(msg)) {
            keyId = keyId.substr(0, keyId.length - 1);
            var url = "FooterManage.aspx?opt=del&fid=" + keyId + "&page=" + page;
            window.location.href = url;
            return true;
        }
        else {
            $("#hdclicks").val(times - 1);
            return false;
        }
    }
    else {
        alert(alertmsg);
    }
}

 

 

 

posted @ 2013-01-11 14:35  TigerWang1986  阅读(443)  评论(0编辑  收藏  举报