2015-05-18 104 views
0

我有一个很大的表单与许多fieldset和gridpanels,我需要提交一个确认按钮的所有数据。其实我使用这个:ext.net按钮点击直接事件

<ext:Button runat="server" Text="Finalizar" Width="150" ID="Button1" Disabled="true"> 
        <DirectEvents> 
         <Click OnEvent="SalvarDados" After="#{StoreVerifLimpeza}.sync();"> 
          <Confirmation ConfirmRequest="true" Title="Confirmação" Message="Confirm?" /> 
          <EventMask ShowMask="true" Msg="Salvando..." /> 
         </Click> 
        </DirectEvents> 
       </ext:Button> 

但显然行动的OnEvent之前发射。因为我在SalvaDadosVerifLimpezaGrade_BeforeRecordInserted中设置了一个外部变量,此变量为空。我试图找到一些directevents点击文件,但发现任何东西。

回答

0

试试这个替代方案:

<script runat="server"> 
    // c# 
    [DirectMethod] 
    public void SalvarDados(){ 
     // ... your code here 
    } 
</script> 

<ext:XScript runat="server"> 
<sctipt type="text/javascript"> 
    function finalizar(){ 
     Ext.Msg.confirm('Confirmação', 'Confirm?', function(btn){ 
      if (btn == 'yes'){ 
       showWaitBox(); 
       App.direct.SalvarDados({ 
        success: function(){ 
         #{StoreVerifLimpeza}.sync(); 
         Ext.MessageBox.close(); 
        } 
       }); 
      } 
     }); 
    } 

    function showWaitBox(timeout){ 
     Ext.MessageBox.wait('Salvando...'); 
     setTimeout(function() { Ext.MessageBox.hide() }, timeout ? timeout : 30000); 
    } 
</script> 
</ext:XScript> 

<ext:Button runat="server" Text="Finalizar" Width="150" ID="Button1" Disabled="true" Handler="finalizar();"> 
+0

嗨!感谢你的支持者。我问题解决了改变: <点击的OnEvent = “SalvarDados” 后= “... ”> 为 <点击的OnEvent =“ SalvarDados” 成功= “...”> 问候。 –