ASP.NET确认框显示两次

时间:2013-01-29 10:08:52

标签: asp.net

我已经搜索了按下某个按钮时显示确认框的方法。 我唯一的问题是,确认框显示两次。 代码:

<dx:ASPxButton ID="btnDel" runat="server" onClick="btnDel_Click" Text="Delete">

并在Page_Load中:

btnDel.Attributes.Add("onclick", "return confirm('Are you sure?');");

2 个答案:

答案 0 :(得分:1)

将Page_Load代码更改为:

if (! IsPostback)
    btnDel.Attributes.Add("onclick", "return confirm('Are you sure?');");

您只需在第一次加载页面时添加一次onclick属性。

答案 1 :(得分:0)

您正在使用的按钮控件是devexpress按钮,它实现了它自己的ClientSideEventCollection,您可以在其中添加任何javascript。你可以像下面这样做

<dx:ASPxButton ID="btnDel" runat="server" onClick="btnDel_Click" Text="Delete">
<ClientSideEvents Click="function(s, e) {
    e.processOnServer = confirm('Are sure to save data?');
  }" />
</dx:ASPxButton> 

这里e.processOnServer是一个布尔值,它决定是否应该执行服务器trip,所以我们将confirm的结果赋给了这个布尔值。

您可以在devexpress docs here

中找到关于开发快速控制的ClientSideEvents的更多信息