页面代码如下:
<asp:Repeater runat="server" ID="objRepeater" OnItemDataBound="objRepeater_ItemDataBound">
        <HeaderTemplate>
            <table class="Grid" border="1" cellspacing="0" style="width: 900px;">
                <tr>
                </tr>
                <th>
                    省份
                </th>
                <th>
                    市
                </th>
            </tr>
        </HeaderTemplate>
        <ItemTemplate>
            <tr>
                <td>
                    <asp:CheckBox ID="chkPrve"  name="chkPrve" runat="server" />
                </td>
                <td>
                    <asp:Repeater ID="repShopInfo"  runat="server">
                        <ItemTemplate>
                            <asp:CheckBox ID="chkCity" name="chkCity" runat="server" />                       </ItemTemplate>
                    </asp:Repeater>
                </td>
            </tr>
        </ItemTemplate>
    </asp:Repeater>左边为省份代码,右边为本省的所有城市,如果点击一个省份的checkbox选中此省份下所有城市city的checkbox后台如果获取选中的值。

解决方案 »

  1.   

    意思 是表格嵌套第一列是省 第二列是市如果省的checkbox 被选中 那对应的全部的市也要被选中那如果 市里面不是全选中,省还选中么?你想让省实现 全选和取消全选么?
      

  2.   

    but   你到底想问什么呢???光贴代码,不说问题(具体点)、、、
      

  3.   

    意思 是表格嵌套
    第一列是省 第二列是市
    如果省的checkbox 被选中 那对应的全部的市也要被选中市里面不是全选中,省不选中就选中。请帮助!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    想用jquery实现。纯JAVASCRIPT也行。谢谢大家
      

  4.   


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
    </head>
    <body>
        <form id="form1" runat="server">
        <asp:Repeater ID="rp" runat="server">
            <HeaderTemplate>
                <table>
            </HeaderTemplate>
            <ItemTemplate>
                <tr>
                    <td>
                        <input type="checkbox" name='prve' /><%#Container.DataItem %>省
                    </td>
                    <td>
                        <asp:Repeater ID="rpChild" runat="server" DataSource='<%#GetSource() %>'>
                            <ItemTemplate>
                                <input type="checkbox" name='city' 
    value='<%# string.Format("{0}省{1}市", (Container.Parent.Parent as RepeaterItem).DataItem, Container.DataItem)%>' />
                                <%# Container.DataItem %>市
                            </ItemTemplate>
                        </asp:Repeater>
                    </td>
                </tr>
            </ItemTemplate>
            <FooterTemplate>
                </table></FooterTemplate>
        </asp:Repeater>
        <asp:Button ID="btnSubmit" runat="server" Text="提交" OnClick="btnSubmit_Click" />
        </form>
        <script type="text/javascript">
            $(function () {
                $('input[name="prve"]').click(function () {
                    var prve = this;
                    $('input[type="checkbox"]', $(this).parent().next()).each(function () {
                        this.checked = prve.checked;
                    });
                });
            });
        </script>
    </body>
    </html>
    protected int[] GetSource()
            {
                return new int[] { 1, 2, 3, 4, 5 };
            }        protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    rp.DataSource = new int[] { 11, 22, 33, 44, 55, 66, 77, 88, 99 };
                    rp.DataBind();
                }
            }        protected void btnSubmit_Click(object sender, EventArgs e)
            {
                ClientScript.RegisterStartupScript(GetType(), "selectValues", Request.Form["city"]);
            }
      

  5.   

    参考相关:
    http://www.cnblogs.com/insus/archive/2011/06/17/2081639.html
      

  6.   

    //第一级菜单2010-08-09 design by longbinfunction check_all(menu_all,MENU_ID)
    {  
     for (i=0;i<document.all(MENU_ID).length;i++)
     {  
       
       if(menu_all.checked)
          document.all(MENU_ID).item(i).checked=true;      
       else
          document.all(MENU_ID).item(i).checked=false;
       var IDStr = document.all(MENU_ID).item(i).id;
       var ID = IDStr.split('CB')[1];
       for (j=0;j<document.getElementsByName(ID).length;j++)
       {
            if(document.all(ID).item(j)!=null)
            {
                document.all(ID).item(j).checked = document.all(MENU_ID).item(i).checked;
            }
       }
     } if(i==0)
     {
       if(menu_all.checked)
          document.all(MENU_ID).checked=true;
       else
          document.all(MENU_ID).checked=false;
     }
    }
    //第二级子菜单 2010-08-09 design by longbin
    function check0(id,id1)
    {
       var nameStr = document.getElementById(id).id;
       var ID = nameStr.split('CB')[1];   
       for (j=0;j<document.getElementsByName(ID).length;j++)
       {
            if(document.all(ID).item(j)!=null)
            {
                document.all(ID).item(j).checked = document.getElementById(id).checked;
            }
       }
        var b=document.getElementById(id);
        var a=document.getElementById(id1);
        if(b.checked)
        {
            a.checked=true;
        }
    }
    function mysubmit()
    {
    var str="";
    var all=document.getElementsByTagName("input")
    for(var i=0;i<all.length;i++)
    {  
       if(all[i].checked)
        {
            if(str=="")
            {
                 str=all[i].value;
            }else
            {
                str+=","+all[i].value;
            }
        }
      }
      
      //document.getElementById("lblFuncIdStr").value=str;
      Form1.lblFuncIdStr.value = str;
      Form1.submit();
    }
    //第三级子菜单 2010-08-09 design by longbin
    function check1(obj,ID)
    {
       var cb = document.getElementById(ID);   
       cb.checked = obj.checked;
       var ckbox = document.getElementsByTagName("input");
       for(var i=0;i<ckbox.length;i++)
       {
           if(ckbox[i].type =="checkbox" && ckbox[i].name =="MENU_"+cb.name)
           {
                if(obj.checked)
                {
                    ckbox[i].checked = obj.checked;
                }        
           }   }
    }
        </script>