如何在详细视图中为命令字段添加删除确认提示?
我想在用户尝试删除详细视图中的记录时提示用户进行确认? 我有命令提交showDeletebutton设置为true。
我找到了如何对gridview进行确认,但是如何修改以匹配详细视图?
码:
protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { // loop all data rows foreach (DataControlFieldCell cell in e.Row.Cells) { // check all cells in one row foreach (Control control in cell.Controls) { // Must use LinkButton here instead of ImageButton // if you are having Links (not images) as the command button. ImageButton button = control as ImageButton; if (button != null && button.CommandName == "Delete") // Add delete confirmation button.OnClientClick = "if (!confirm('Are you sure " + "you want to delete this record?')) return;"; } } } }
任何人?
这可以在标记代码上轻松完成。 我只是将js代码添加到删除按钮的onClientClick属性中:
OnClientClick="return confirm('Are you sure you want to delete this record');"
或者如果你想在后面的代码中执行此操作:
protected void DetailsView1_DataBound(object sender, EventArgs e) { LinkButton bttn = (LinkButton)DetailsView1.FindControl("lnkDelete"); bttn.OnClientClick = "return confirm('Are you sure you want to delete this record!');"; }
我找到了问题的答案。
我的答案:
protected void DViewComputer_DataBound1(object sender, EventArgs e) { int noRow = DViewComputer.Rows.Count - 1;//get the no of record if (noRow >0) { Button button = (Button)(DViewComputer.Rows[noRow].Cells[0].Controls[2]); // Add delete confirmation ((System.Web.UI.WebControls.Button)(button)).OnClientClick = "if (!confirm('Are you sure " + "you want to delete this record?')) return;"; } }
无论如何,谢谢你的帮助。
foreach (Control control in cell.Controls) { // Must use LinkButton here instead of ImageButton // if you are having Links (not images) as the command button. ImageButton button = control as ImageButton; if (button != null && button.CommandName == "Delete") // Add delete confirmation button.Attributes.Add("onclick","your javascript here"); }
请看下面的url……
http://www.codeproject.com/Articles/32756/ASP-NET-GridView-delete-confirmation-using-asp-Com
这纠正了OP的解决方案。 该代码是从以下代码中翻译而来的: http : //forums.aspfree.com/net-development-11/confirm-button-when-deleting-detailsview-120113-2.html
protected void dvEvent_DataBound(object sender, EventArgs e) { int commandRowIndex = dvEvent.Rows.Count - 1; if (commandRowIndex > 0) { DetailsViewRow commandRow = dvEvent.Rows[commandRowIndex]; DataControlFieldCell cell = (DataControlFieldCell)commandRow.Controls[0]; foreach (Control ctrl in cell.Controls) { if (ctrl is ImageButton) { ImageButton ibt = (ImageButton)ctrl; if (ibt.CommandName == "Delete") { ibt.ToolTip = "Click here to Delete"; ibt.CommandName = "Delete"; ibt.Attributes["onClick"] = "if (!confirm('Are you sure " + "you want to delete this record?')) return;"; } } } } }