用户户操作删除记录之前给用户一个确认是否删除的提示。一般情况之下,一条记录一条记录删除是没有问题的。但是,如遇到可以多选,如果用户没有选择记录,直接去点删除铵钮,它会首先提示删除前的确认信息,再提示用户没有选择想要删除的记录。
Insus.NET想实现的是,把它的顺序调换一下,首先判断用户是否有选择记录,如果没有,提示用户选择记录,一旦有选择记录时,才提示删除前确认信息。
下面实例,将是GridView第一例放置一个CheckBox,让用户多选记录,然后在Gridview外放一个Delete铵钮。
演示:https://www.jb51.net/article/33564.htm
xxx.aspx:
复制代码 代码如下:
asp:Button ID="ButtonDelete" Text="Delete" runat="Server" OnClick="ButtonDelete_Click"
CausesValidation="false" />
asp:GridView ID="GvCutterType" runat="server" DataKeyNames="CutterTypeId" AutoGenerateColumns="false">
Columns>
asp:TemplateField>
ItemStyle BorderWidth="1" BorderColor="#c0c0c0" Width="1%" />
ItemTemplate>
asp:CheckBox ID="CheckBox1" runat="server" onclick="Javascript:changeRowBgColor(this)" />
/ItemTemplate>
/asp:TemplateField>
!--
other column templateField
-->
/Columns>
/asp:GridView>
xxx.aspx.cs:
复制代码 代码如下:
protected void Page_Load(object sender, EventArgs e)
{
this.ButtonDelete.Attributes.Add("onclick", "return ConfirmOnDelete();");
}
protected void ButtonDelete_Click(object sender, EventArgs e)
{
//do delete something
}
Javascript:
复制代码 代码如下:
function ConfirmOnDelete() {
if (document.getElementById("%= GvCutterType.ClientID %>") == null) {
return false;
}
var objgv = document.getElementById("%= GvCutterType.ClientID %>");
var rc = objgv.rows.length;
var y = 0;
for (var i = 0; i rc; i++) {
var getInput = objgv.rows[i].cells[0].getElementsByTagName("input");
if (getInput[0].type == "checkbox") {
if (getInput[0].checked) {
y = y + 1;
}
}
}
if (y = 0) {
alert("首先选择想要删除的记录。");
return false;
}
if (confirm("以下选择的记录将被删除。") == true)
return true;
else
return false;
}
您可能感兴趣的文章:- GridView使用CommandField删除列实现删除时提示确认框
- VB.NET 中删除DataGridView中所选行的小例子
- Gridview的链接和删除点击提示的问题探讨
- asp.net 不用GridView自带删除功能,删除一行数据
- asp.net GridView的删除对话框的两种方法
- GridView自定义删除操作的具体方法