ASPxGridView停止回调

时间:2011-12-21 15:46:46

标签: javascript asp.net ajax devexpress aspxgridview

有没有办法停止处理由ASPxGridView网格中定义的自定义按钮启动的回调?

我的代码中有这个:

BeginCallback="function(s, e) {
    var response = confirm('Really want to do this?');
    //if response = false, I need to stop processing...
}"

我需要两种解决方案之一:

  1. 立即停止通话(服务器不会被点击) 或
  2. 通知服务器调用已被取消,以便服务器可以快速退出回调处理程序。
  3. 感谢。

3 个答案:

答案 0 :(得分:3)

你可以这样做..

<ClientSideEvents CustomButtonClick="function(s, e)
{
if(e.buttonID=='Send')
{
if (confirm ('Are you sure?'))
{
e.processOnServer = true;
}
}
else
{
e.processOnServer = true;
}
}
" />

Credit

答案 1 :(得分:2)

您无法在BeginCallback事件处理程序中取消回调。您应该在回调开始之前尝试显示确认对话框。我确定你不想在所有网格回调中添加确认对话框(分页,排序,分组,编辑,自定义回调等)。
here进行官方解释。

答案 2 :(得分:0)

您无法在BeginCallback事件中取消回调。你可以做这样的事情作为替代解决方案。

<dxe:ASPxButton ID="btnConfirm" runat="server" AutoPostBack="False" Text="Callback">
    <ClientSideEvents Click="function(s, e) {if(!confirm('Really want to do this?')) return; gvCallbackGrid.PerformCallback();}" />
</dxe:ASPxButton>

<dxwgv:ASPxGridView ID="gvCallbackGrid" runat="server" ClientInstanceName="gvCallbackGrid">
....
</dxwgv:ASPxGridViewTemplateReplacement>