2011-12-21 57 views
1

有沒有辦法停止處理由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

你可以做到這一點..

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

Credit

2

您不能在BeginCallback事件處理程序中取消回調。在回調開始之前,您應該嘗試顯示確認對話框。我相信你不想爲所有網格回調(分頁,排序,分組,編輯,自定義回調等)添加確認對話框。
請看官方說明here

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>