2012-03-15 13 views
6

Questo è il codice che sto utilizzando:OnClientClick sparato prima ValidationGroup

  <telerik:RadTextBox ID="txtTitre" runat="server" Skin="Windows7" Width="250"> 
      </telerik:RadTextBox> 
      <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="*" 
       ForeColor="Red" ControlToValidate="txtTitre" ValidationGroup="validationincident"></asp:RequiredFieldValidator> 

E il mio tasto ASP:

 <asp:Button ID="Button1" runat="server" Text="Soumettre ce ticket" OnClick="Button1_Click" 
      OnClientClick="CloseDialog()" UseSubmitBehavior="false" ValidationGroup="validationincident" /> 

Il mio problema è che sembra OnClientClick viene generato prima ValidationGroup in quanto la funzione JS chiamata nel mio OnClientClick chiude la mia finestra.

Quindi la finestra si chiude e il "*" (messaggio di errore) viene visualizzato solo quando riapri la finestra.

Ho bisogno che il mio ValidationGroup venga controllato per primo! Grazie in anticipo per il vostro aiuto

risposta

17

Usa Page_ClientValidate() che controlla le convalide client

<asp:Button ID="Button1" runat="server" Text="Soumettre ce ticket" OnClick="Button1_Click" 
      OnClientClick="if(Page_ClientValidate()) CloseDialog();" UseSubmitBehavior="false" ValidationGroup="validationincident" /> 
+0

ho usato questo e mi chiedo perché la messagebox appare due volte? utilizzo un riepilogo di convalida e il set mostra la finestra del messaggio su true, qualsiasi correzione? Grazie – user2705620

2

Fai CausesValidation = "true" per il tasto.

2

Usa Page_ClientValidate() che controlla le convalide client

<asp:Button ID="Button1" runat="server" Text="Button" 
    OnClientClick="if(Page_ClientValidate()) CloseDialog();" OnClick="Button1_Click"/> 

Inoltre, è anche possibile specificare il gruppo di convalida Page_ClientValidate(validationGroup), nel caso in cui si dispone di più convalide sulla tua pagina:

<asp:Button ID="Button1" runat="server" Text="Button" ValidationGroup="myGroup" 
     OnClientClick="if(Page_ClientValidate('myGroup')) CloseDialog();" OnClick="Button1_Click" /> 
Problemi correlati