13

こんにちは、私は RequiredFieldValidator を持っています

<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>

そして、このようなボタン

 <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" />

ここでの問題は、ボタンの OnClientClick を削除すると、RequriedFieldValidator が正常に機能し、エラー メッセージを表示せずにページの投稿を元に戻せば、誰かがこれが起こっている理由を説明できますか??

4

1 に答える 1

32

このコードを使用してみてください。

    <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>
于 2013-06-14T10:26:21.547 に答える