GridView使用CommandField刪除列實現刪除時提示確認框_實用技巧

來源:互聯網
上載者:User
GridView在使用CommandField刪除時彈出提示框,在.net2005提供的GridView中我們可以直接添加一個CommandField刪除列:<asp:CommandField ShowDeleteButton="True" />,完後在它的RowDeleting事件中完成刪除。但在多半我們在做這種刪除操作時都需要先讓操作者再確認下,完後再進行刪除,以避免誤操作引起的誤刪除。

可以通過下面方法給GridView刪除前加上個確認對話方塊。

首先,在GridView的屬性對框話框中點擊“Columns”進入它的“欄位”設計器。接著在“欄位”設計器中選擇以前已加上的那個CommandField“刪除”列,這時在它的屬性列表下會看到一個“將此它段轉換為 TemplateFied”的項,點擊將它轉換為TemplateFied列。

完後退出該欄位設計器,切換到源碼視圖你會發現該列已由原來的:<asp:CommandField ShowDeleteButton="True" />
變為了:
複製代碼 代碼如下:

<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Delete" Text="刪除"></asp:LinkButton>
</ItemTemplate>

最後在<asp:LinkButton>中加入:OnClientClick="return confirm('確認要刪除嗎?');"

這樣點擊刪除時就會先在用戶端彈出“確認要刪除嗎?”對話方塊,而原來在RowDeleting事件中寫的代碼完全不用改變。

第二種方法:

實現方法:

雙擊GridView的OnRowDataBound事件;

在背景GridView1_RowDataBound()方法添加代碼,最後代碼如下所示:
複製代碼 代碼如下:


protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//如果是綁定資料行
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
{
((LinkButton)e.Row.Cells[6].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('你確認要刪除:\"" + e.Row.Cells[1].Text + "\"嗎?')");
}
}

}

以上是兩種最常見的完善GridView中的刪除控制項的方法,這兩種方法還沒有實現對特定資料的綁定作用。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.