標籤:
情景一、 沒有外部索引鍵關聯,
操作:在資料來源中將刪除選項選中--- GrideView 中的刪除 選項選中 即可
情景二、 有外部索引鍵關聯
*RowDeleting 行刪除前觸發
*RowDeleted 行刪除後觸發
操作有外部索引鍵關聯的表,需要在執行刪除前先把關聯資料刪除:
法一:
// 執行刪除操作前執行
1 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) 2 { 3 //// 擷取主鍵 4 //string key = e.Keys["Code"].ToString(); //有個前提:事先必須要保證GridView的DataKeyNames屬性有值。 5 // //執行刪除 6 //var query1 = _Context.Work.Where(p => p.InfoCode == key); 7 //var query2 = _Context.Family.Where(p=>p.InfoCode == key); 8 //_Context.Work.DeleteAllOnSubmit(query1); 9 //_Context.Family.DeleteAllOnSubmit(query2);10 //_Context.SubmitChanges();11 ////執行 LinQDataSource的刪除功能12 }13 // 刪除完畢後執行,提示使用者已經刪除完畢14 protected void GridView1_RowDeleted(object sender, GridViewDeletedEventArgs e)15 {16 //Literal1.Text = "<script language=javascript>alert(‘刪除成功‘)</script>";17 }
// 查詢資料相關資料,沒有資料時,頁面提示
將EmptyDataText屬性設定 : “未找到相關資料!”
法二:
1 //刪除工作簡曆和家庭關係 2 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) 3 { 4 //擷取主鍵 5 string key = e.Keys["Code"].ToString(); 6 //把三個表都刪掉。 7 var query = _Context.Info.Where(p=>p.Code == key); 8 Info data = query.First(); 9 10 _Context.Work.DeleteAllOnSubmit(data.Work);11 _Context.Family.DeleteAllOnSubmit(data.Family);12 _Context.Info.DeleteOnSubmit(data);13 _Context.SubmitChanges();14 //重新整理,阻止事件向前進行。15 GridView1.DataBind();16 e.Cancel = true; //阻止事件序列。17 //Literal1.Text = "<script language=javascript>alert(‘刪除成功‘)</script>";// 提示刪除成功18 }
方法三、1、編輯列--添加超連結列(HyperLinkField)--設定text =“刪除”;
2、 將此超連結指向某個欄位(DataNavigateUrlFields=Code)
3、DataNavigateUrlFormatString=“Delete.ashx?id={0}” 註:{0}的意思是指的上面的指向的Code;
4、添加一般處理常式(Delete.ashx) 添加刪除程式並跳回顯示頁面;
情景描述: 執行刪除時 ,提示是否確定刪除
法一、
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e){//給刪除按鈕加確認if (e.Row.RowType == DataControlRowType.DataRow){LinkButton btnDelete = e.Row.Cells[5].Controls[0] as LinkButton;btnDelete.OnClientClick = "return confirm(‘確認要刪除嗎?‘)";}}
法二 、 在“編輯列”中 給 刪除 添加 樣式,添加樣式後
通過Jquery 添加點擊事件
<script language="javascript">
$(document).ready(function () {
$(".del").click(function () {
return confirm(‘確認要刪除嗎?‘);
});
});
</script>
GrideView(二)---刪除功能