2013-06-14 4 views
11

hallo ich habe ein RequiredFieldValidator Gefallen Sie diesenPflichtfeld Validator funktioniert nicht, wenn OnClientClick in der Schaltfläche hinzugefügt wird

<asp:TextBox ID="txtEmployeeID" runat="server" MaxLength="255" CssClass="txt" 
    OnTextChanged="txtEmployeeID_TextChanged" AutoPostBack="True" 
    ValidationGroup="Save" ></asp:TextBox>  
<asp:RequiredFieldValidator ID="rfvEmployeeID" runat="server" 
    ErrorMessage="Employee ID is required information." 
    ControlToValidate="txtEmployeeID" Display="None" ValidationGroup="Save" 
    SetFocusOnError="True"></asp:RequiredFieldValidator> 

und eine Schaltfläche wie dies

<asp:Button ID="btnBlockUser" runat="server" Text="Block User" 
    CssClass="submitBtn " OnClick="btnBlockUser_Click" 
    OnClientClick="javascript:return confirm('Are you sure want to Block this user ?')" 
    ValidationGroup="Save" /> 

Nun ist das Problem, dass, wenn ich das entfernen OnClientClick in der Schaltfläche funktioniert die RequiededFieldValidator funktioniert gut, wenn ich es zurück dort page posts zurück, ohne eine Fehlermeldung anzuzeigen kann jemand erklären, warum dies geschieht ??

+0

ich fand heraus, wird dazu beitragen, dass ich dieses Page_ClientValidate hinzufügen könnte() an dem OnClientClick Ereignis aber ist es möglich, die bestätigt() -Methode zu vermeiden Aufruf wenn die Validierung fehlschlägt? –

+0

Ich tat dies und es funktioniert gut, aber .. die Fehlermeldung wird zweimal angezeigt OnClientClick = "javascript: if (PageClientValidate()) zurückgeben bestätigen ('Möchten Sie diesen Benutzer wirklich blockieren?');" –

Antwort

27

versuchen, diesen Code zu verwenden, um es Ihnen

<asp:RequiredFieldValidator ID="rfvEmployeeID" runat="server" ErrorMessage="Employee ID is required information." 
     ControlToValidate="txtEmployeeID" ValidationGroup="Save" SetFocusOnError="True"></asp:RequiredFieldValidator> 
     <br /> 
    <asp:Button ID="btnBlockUser" runat="server" Text="Block User" CssClass="submitBtn" CausesValidation="true" OnClientClick="return validate();" 
     OnClick="btnBlockUser_Click" ValidationGroup="Save" /> 
     <script type="text/javascript" language="javascript" > 
      function validate() { 
       if (Page_ClientValidate()) 
       return confirm('Are you sure want to Block this user ?'); 
      } 
     </script> 
+0

PageClientValidate() undefined für mich –

+0

PageClientValidate() ist, was mir gefehlt hat ... – Faker

Verwandte Themen