您的位置:首页 > 编程语言 > ASP

asp.net中弹出确认窗口(confirm),实现确认删除的功能

2011-03-17 09:15 666 查看
在网页***中经常出现是否确认按钮,特别是在删除数据库是,如果没有做这种设置就会引起数据的丢失。如果做了确认按钮后就会给用户一次补救的机会,这样就避免了不必要的数据丢失。如果直接用js写的话有很难和后台的操作联系。

解决方案:

给按钮添加Attributes属性,即Button1.Attributes["OnClick"] =
"return confirm('are you sure?')";

这样在客户端生成 OnClick="return confirm('are you
sure?')"
用户执行按钮的操作时,先在本地执行弹出一个confirm的确认窗口,再根据用户的选择,判断是否要执行按钮的操作。可能在刚开始的时候会认为服务器端是怎么知道用户的选择,其实在点击后,当选择“取消”时客户端自己进行确认,并没有发到服务器端进行确认。

下面就是一个例子

.aspx代码





<
form id
=
"
Form1
"
method
=
"
post
"
runat
=
"
server
"
>




<
FONT face
=
"
宋体
"
>




<
asp:Button id
=
"
Button1
"
runat
=
"
server
"
Text
=
"
Button
"
></
asp:Button
>




<
asp:Label id
=
"
Label1
"
runat
=
"
server
"
>
Label
</
asp:Label
></
FONT
>




</
form
>

.cs代码



private

void
Page_Load(
object
sender, System.EventArgs e)




{




//
在此处放置用户代码以初始化页面



Button1.Attributes["OnClick"] = "return confirm('are you sure?')"
;



Label1.Text
=
"
are you sure
"
;



}

其实在asp.net用到确认按钮最多的是后台的删除操作。一般在Gridview或DateList上用的比较多。

在Gridview的操作就是多按钮项的操作。所以首先要做的事情就是找到按钮项,再把confirm绑上去。



private void infolist_ItemDataBound(object sender,
DataGridItemEventArgs e)

{


if(e.Item.ItemType!=ListItemType.Header&&
.Item.ItemType!=ListItemType.Footer)

{

LinkButton deleteButton =
(LinkButton) e.Item.Cells[4].Controls[0];


deleteButton.Attributes["OnClick"]="return
confirm('你确认要删除吗?')";

}

}

在项绑定函数ItemDataBound中先排除顶和底,因为那里是没有我们要找的按钮的。在找到我们要找的按钮将OnClick绑到按钮中就可以了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: