我就是想用GridView控件,在其中列出所有用户,在每行前面加上一个复选框,实现能向多个用户发相同消息的功能,请问如何实现?

解决方案 »

  1.   

    参考:http://blog.csdn.net/insus/archive/2008/03/09/2159352.aspx
      

  2.   

    <script language="javascript" type="text/javascript">    
        // 判断多选是否与选中项(没有选中的返回false)    function slcNo_click()
        {
            if (document.form1.checkboxname.length)
            {
                for (var i=0;i<document.form1.checkboxname.length;i++)
                {
                    if(document.form1.checkboxname[i].checked)
                    {
                        return true;
                    }
                }
            }
            else
            {
                if(document.form1.checkboxname.checked)
                {
                    return true;
                }
            }
            alert("请选择后再操作!");
            return false;
        }
        
        // 鼠标经过改变行的颜色
        if (!objbeforeItem)
        {
            var objbeforeItem=null;
            var objbeforeItembackgroundColor=null;
        }    
        function ItemOver(obj)
        {
            if(objbeforeItem)
            {
                objbeforeItem.style.backgroundColor = objbeforeItembackgroundColor;
            }
            objbeforeItembackgroundColor = obj.style.backgroundColor;
            objbeforeItem = obj;
            obj.style.backgroundColor = "#B9D1F3";     
        }
        //        
     
        // 多选的全选与取消
        function checkJs(boolvalue)
        {
            if(document.all.checkboxname.length>1)
            {
                for(var i=0;i<document.all.checkboxname.length;i++)
                {
                    document.all.checkboxname[i].checked = boolvalue;            
                }
            }
            else
                document.all.checkboxname.checked = boolvalue;
        }
        //
        
        // 只有全部选中时“全选”选中
        function SingleCheckJs()
        {
            var flag1=false;
            var flag2=false;
            
            if (document.form1.checkboxname.length)
            {
                for (var i=0;i<document.form1.checkboxname.length;i++)
                {
                    if(document.form1.checkboxname[i].checked)
                        flag1 = true;
                    else
                        flag2 = true;
                }
            }
            else
            {
                if(document.form1.checkboxname.checked)
                    flag1 = true;
                else
                    flag2 = true;
            }
            
            if(flag1==true&&flag2==false)
                document.getElementById("chk").checked = true;
            else
                document.getElementById("chk").checked = false;
        }
        //
        </script><form id="form1" runat="server"><asp:GridView ID="gv" runat="server" AutoGenerateColumns="False" BorderStyle="Solid" HorizontalAlign="Center" Width="100%">
                <Columns>
                    <asp:TemplateField FooterText="全选" HeaderText="&lt;input type='checkbox' id='chk' name='chk' onclick='checkJs(this.checked);'  /&gt;全选">
                        <ItemTemplate>
                            <input id="checkboxname" name="checkboxname" onclick='SingleCheckJs();' type="checkbox"
                                value='<%# DataBinder.Eval(Container.DataItem, "id")%>' />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
    </asp:GridView>
    </form>
      

  3.   

     if (Request.Form.Get("checkboxname") == null)
            {
                return;
            }
           string str = Request.Form.Get("checkboxname");
           string ckb = str.Split(new char[] { ',' });后台取