<script language="javascript" type="text/javascript">
        var hidCtlId = "<%=hidSelectId.ClientID%>";        function checkSelectId() {            var hidValId = document.getElementById(hidCtlId);
            if (hidValId.value.length == 0) {
                alert("请先选择要操作的数据");
                return false;
            }
            return true;
        }        function chkSelectAll(spanckb) {
            var thebox = spanckb;
            oState = thebox.checked;            oItem = document.getElementsByTagName("input");            for (i = 0; i < oItem.length; i++) {
                if (oItem[i].type == "checkbox" & oItem[i].id != thebox.id) {
                    if (oItem[i].checked != oState)
                        oItem[i].click();
                }
            }
        }        function setSelectVal(spanckb, id) {
            var thebox = spanckb;
            oState = thebox.checked;
            if (oState) {
                attachVal(id);
            }
            else {
                detachVal(id);
            }
        }        function attachVal(id) {
            var hidValId = document.getElementById(hidCtlId);
            var selValue = ',' + hidValId.value;
            temp = ',' + id + ',';
            // 不存在则添加
            if (selValue.indexOf(temp) == -1) {
                hidValId.value = hidValId.value + id + ',';
            }
        }        function detachVal(id) {
            var hidValId = document.getElementById(hidCtlId);
            var selValue = ',' + hidValId.value;
            temp = ',' + id + ',';
            selValue = selValue.replace(temp, ',');
            hidValId.value = selValue.substr(1);
        }
    </script>在线等。详细点最好。

解决方案 »

  1.   

    function checkSelectId() {            var hidValId = document.getElementById(hidCtlId);
                if (hidValId.value.length == 0) {
                    alert("请先选择要操作的数据");
                    return false;
                }
                return true;
            }
    ====
    函数:返回是否选择CHECKBOX,如选择,则为TRUE,如为FALSE,则弹出警告框,“请先选择要操作的数据”
      

  2.   

    function chkSelectAll(spanckb) {
                var thebox = spanckb;
                oState = thebox.checked;            oItem = document.getElementsByTagName("input");            for (i = 0; i < oItem.length; i++) {
                    if (oItem[i].type == "checkbox" & oItem[i].id != thebox.id) {
                        if (oItem[i].checked != oState)
                            oItem[i].click();
                    }
                }
            }
    ====
    使得所有的CHECKBOX都被选择
      

  3.   

     function attachVal(id) {
                var hidValId = document.getElementById(hidCtlId);
                var selValue = ',' + hidValId.value;
                temp = ',' + id + ',';
                // 不存在则添加
                if (selValue.indexOf(temp) == -1) {
                    hidValId.value = hidValId.value + id + ',';
                }
            }        function detachVal(id) {
                var hidValId = document.getElementById(hidCtlId);
                var selValue = ',' + hidValId.value;
                temp = ',' + id + ',';
                selValue = selValue.replace(temp, ',');
                hidValId.value = selValue.substr(1);
            }
    ===
    增加或去除对应ID在隐藏域的值(用逗号隔开的处理字符串)
      

  4.   

    最好能把HTML代码一起发上来 这样容易观看效果..
      

  5.   

    function setSelectVal(spanckb, id) {
                var thebox = spanckb;
                oState = thebox.checked;
                if (oState) {
                    attachVal(id);
                }
                else {
                    detachVal(id);
                }
            }
    ====
    动态调用3楼的函数。
      

  6.   

    一品,在.cs文件里面还有这么一句
    CheckBox1.Attributes.Add("onclick", "chkSelectAll(this);");
    这样是不是把所有的checkbox 就赋值到thebox上去了啊?
      

  7.   

    是设置所有的CHECKBOX为选中状态。
      

  8.   

    CheckBox1.Attributes.Add("onclick", "chkSelectAll(this);"); 
    应该是为控件添加属性:
    属性名为:onclick
    值为:chkSelectAll(this)
      

  9.   

    function attachVal(id) { 
                var hidValId = document.getElementById(hidCtlId); 
                var selValue = ',' + hidValId.value; 
                temp = ',' + id + ','; 
                // 不存在则添加 
                if (selValue.indexOf(temp) == -1) { 
                    hidValId.value = hidValId.value + id + ','; 
                } 
            }         function detachVal(id) { 
                var hidValId = document.getElementById(hidCtlId); 
                var selValue = ',' + hidValId.value; 
                temp = ',' + id + ','; 
                selValue = selValue.replace(temp, ','); 
                hidValId.value = selValue.substr(1); 
            } 
    === 
    增加或去除对应ID在隐藏域的值(用逗号隔开的处理字符串)