1.建一个repeater

<asp:Repeater ID="Repeater1" runat="server">
            <HeaderTemplate>
            <table width="100%" border="0" cellspacing="5">
                <tr>
                    <td>
                        <input id="ckall" name="ckall" type="checkbox" onclick="checkAll(this)" />
                    </td>
                    <td>名称</td>
                    <td>系列</td>
                    <td>厂商</td>
                    <td>价格</td>
                </tr>
            </HeaderTemplate>
            <ItemTemplate>
                <tr>
                    <td>
                        <input id="ck_<%# Eval("Code") %>" name="ck" type="checkbox" value="<%# Eval("Code") %>" onclick="setCheckAll()" />
                    </td>
                    <td><%# Eval("Name") %></td>
                    <td><%# Eval("BrandName") %></td>
                    <td><%# Eval("ProdName") %></td>
                    <td><%# Eval("Price") %></td>
                </tr>
            </ItemTemplate>
            <FooterTemplate>
                </table>
            </FooterTemplate>
        </asp:Repeater>

2.两个函数

  //点击全选,每一项都会选上
        function checkAll(ckall) {
            //找所有的每一项左侧的复选框。
            var cks = document.getElementsByName("ck");
            //遍历每个复选框,把每个复选框的选中状态设置得和chkall一样
            for (var i = 0; i < cks.length; i++) {
                cks[i].checked = ckall.checked;
            }
        }
        //全选之后把其中一项的选项去掉,全选的也会去掉
        function setCheckAll() {
            //思路:遍历所有项的复选框,判断是否全选。是全选的话,把ckall设为选中,否则把它设为不选中。
            //1.找到所有的项的复选框。
            var cks = document.getElementsByName("ck");
            //2.遍历每个复选框,记录是否被全选了。
            var selectedall = true;
            for (var i = 0; i < cks.length; i++) {
                selectedall = selectedall && cks[i].checked;
            }
            //3.根据是否被全选的状态,确定ckall的选中状态
            var ckall = document.getElementById("ckall");
            ckall.checked = selectedall;
        }

3.删除

 //删除选中项
        function dodelete() {
            //1.找到所有的项的复选框。
            var cks = document.getElementsByName("ck");

            //2.判断是否有选中项
            var selecteditem = false;
            for (var i = 0; i < cks.length; i++) {
                selecteditem = cks[i].checked || selecteditem;
            }
            //3.根据选中项的情况给出不同的对话框提示
            if (selecteditem == false) {
                alert("请选择要删除的项");
                return false;
            }
            else {
                var del = confirm("确认要删除选中的项吗?");
                return del;
            }
        }

 //点击删除按钮
    protected void Button1_Click(object sender, EventArgs e)
    {
        if (Request["ck"] != null)
        {
            //获取选中项的主键值
            string s = Request["ck"].ToString();  //选中项的value值,使用,隔开的。
            string[] keys = s.Split(',');  //劈开上面的字符串,形成主键值的数组。
            //根据上面的主键值删除数据
            foreach (string key in keys)
            {
                var query = _Context.Car.Where(p=>p.Code == key);
                if (query.Count() > 0)
                {
                    Car data = query.First();
                    _Context.Car.DeleteOnSubmit(data);
                    _Context.SubmitChanges();
                }
            }
            //刷新显示
            Show();
            Literal1.Text = "<script language='javascript'>alert('删除成功')</script>";
        }

 

posted on 2015-08-20 11:29  浅笑瑾年  阅读(473)  评论(0编辑  收藏  举报