Kiến thức

Tìm kiếm
Hỗ trợ trực tuyến
Hỗ trợ trực tuyến - toankhoa1008
Mr.Khoa - 0909 017 015
Khuyến mãi
Khuyến mãi
Đối tác
Kiến thức thiết kế
Tạo chức năng multiDelete giống Yahoo Mail hoặc Goole Mail
4/23/2012 3:48:42 PM
Trong bài viết này, WEBXAULA sẽ giới thiệu tới các bạn cách tạo chức năng xoá cùng lúc nhiều dòng dữ liệu giống Yahoo Mail hoặc Google Mail
Tạo chức năng multiDelete giống Yahoo Mail hoặc Goole Mail

Ở đây mình thực hiện trên Gridview. Bạn viết code html trong file aspx như sau:

 

<div style="padding:5px; text-align:right;">
            <asp:Button ID="cmdXoa" runat="server" Text="Xoá" Height="30px" Width="100px" OnClientClick="javascript:return confirm(Bạn có chắc chắn muốn xoá tin này không?);"
                onclick="cmdXoa_Click" />
        </div>
 
<asp:GridView ID="DS_Tin" runat="server" AutoGenerateColumns="False"
            BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px"
            CellPadding="4" GridLines="Horizontal" Width="100%">
            <Columns>
                <asp:TemplateField HeaderText="Tiêu đề">
                    <ItemTemplate>
                        <a href=<%# "../admin/?edittin=" + Eval("tinID") %>><%# Eval("tieude") %></a>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Hình">
                    <ItemTemplate>
                        <img src=<%# "../hinh/tin/" + Eval("hinh") %> width="80px" />
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Xoá">
                    <ItemTemplate>
                        <asp:CheckBox ID="chkXoa" runat="server" />
                        <asp:Label ID="lblMa" runat="server" Text=<%# Eval("tinID") %> Visible="false"></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
            <FooterStyle BackColor="White" ForeColor="#333333" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />

        </asp:GridView>

 

Trong cột "Xoá" ở trên, có 2 control Checkbox "chkXoa" dùng để check chọn vào dòng dữ liệu bạn muốn xoá và Label "lblMa" dùng để lấy mã của dòng dữ liệu xoá.

 

Ở Button "cmdXoa" tôi thêm một sự kiện OnClientClick và chèn vào một câu lệnh javascript trả về một confirm để xác nhận lại từ người dùng có thực sự muốn xoá dữ liệu hay không.

 

Trong sự kiện click của button bạn code như sau:

 

protected void cmdXoa_Click(object sender, EventArgs e)
    {
 
        for (int i = 0; i <= DS_Tin.Rows.Count - 1; i++)
        {
            CheckBox pXoa = (CheckBox)DS_Tin.Rows[i].FindControl("chkXoa");
            Label pMa = (Label)DS_Tin.Rows[i].FindControl("lblMa");
 
            if (pXoa.Checked == true)
            {
                //Xoá
                ketnoiDataContext pKetNoi = new ketnoiDataContext();
                Tin pTinXoa = pKetNoi.Tins.Single(p => p.tinID == Int32.Parse(pMa.Text));
 
                pKetNoi.Tins.DeleteOnSubmit(pTinXoa);
                pKetNoi.SubmitChanges();
            }
        }
        hienDuLieu();
    }

 

Ở đây tôi dùng Linq để truy vấn dữ liệu. Bạn có thể tuỳ biến lại theo cách xử lý dữ liệu của riêng bạn. Chúc các bạn thành công.

Cám ơn các bạn đã đọc bài viết này. Nếu bạn cảm thấy bài viết này hay và có ích thì hãy ấn +1 hoặc like để khích lệ tác giả bài viết nhé, và nếu được thì share cho bạn bè cùng đọc. Thanks ^o^

Bài viết liên quan


4/22/2012 2:11:39 PM
Một trong những bước quan trọng khi tiến hành tối ưu hoá website là sử dụng URL thân thiện với google. Trong bài viết này WEBXAULA sẽ giới t [....]
4/20/2012 11:49:27 AM
Trong các website thường có phần liên hệ để người dùng liên hệ với quản lý website đó. Trong bài viết này, WEBXAULA làm form liên hệ như WEB [....]
4/20/2012 11:17:54 AM
Khi xây dựng một website, nhiều khi bạn phải thực hiện lồng các control để hiển thị dữ liệu, vd như hiển thị các bài viết theo đúng danh mục [....]
4/17/2012 4:45:36 PM
reCaptcha là 1 dịch vụ giúp chúng ta có thể chống lại bot, và những submit không phải do con người (do engine). Bài viết này sẻ hướng dẫn cá [....]
4/17/2012 4:38:54 PM
Bạn nhận một đơn đặt hàng thiết kế website yêu cầu có một đồng hồ thời gian đếm ngược (VD: đấu giá, thời gian khuyến mãi, v.v...) nhưng làm [....]
4/17/2012 4:29:58 PM
Có khá nhiều cách để export dữ liệu ra file excel. WEBXAULA sẽ đơn cử một phương pháp khá đơn giản (không cần phải chèn thêm thư viện bên ng [....]
3/6/2012 6:34:18 PM
Không có một bí quyết nào về việc đẩy mạnh doanh số bán hàng qua Internet. Bạn thu hút sự chú ý của đông đảo mọi người và gia tăng các khách [....]
1 2
Doanh Nghiệp Tư Nhân TM DV TAHI TAKA
Văn phòng: G7, ấp Mỹ Hoà 2, xã Xuân Thới Đông, huyện Hóc Môn, TPHCM
Điện thoại: (84-8) 6250 1751 - 0909.017.015
Email: contact@webxaula.com - ktwebpro@gmail.com
Website: www.webxaula.com