Почему мой MaskedEditValidator не работает? - PullRequest
2 голосов
/ 13 марта 2012

На моей странице есть следующие элементы управления, мой CompareValidator работает, но не MaskedEditValidator. Я что-то упустил?

<form id="form1" runat="server">
    <asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
    </asp:ToolkitScriptManager>
    <div>
        Date: <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:CalendarExtender ID="TextBox1_CalendarExtender" runat="server" 
            Enabled="True" TargetControlID="TextBox1">
        </asp:CalendarExtender>
        <asp:MaskedEditExtender ID="TextBox1_MaskedEditExtender" runat="server" 
            CultureAMPMPlaceholder="" CultureCurrencySymbolPlaceholder="" 
            CultureDateFormat="" CultureDatePlaceholder="" CultureDecimalPlaceholder="" 
            CultureThousandsPlaceholder="" CultureTimePlaceholder="" Enabled="True" 
            TargetControlID="TextBox1" Mask="99/99/9999" MaskType="Date">
        </asp:MaskedEditExtender>
        <%--<asp:MaskedEditValidator ID="MaskedEditValidator1" runat="server" 
            ControlExtender="TextBox1_MaskedEditExtender" ControlToValidate="TextBox1" 
            ErrorMessage="The Date is not valid!" IsValidEmpty="False">
        </asp:MaskedEditValidator>--%>        
        <asp:CompareValidator ID="CompareValidator1" runat="server" 
            ErrorMessage="Invalid Date!" ControlToValidate="TextBox1" 
            Operator="DataTypeCheck" Type="Date">
        </asp:CompareValidator>
        <br />
        <br />
        <asp:Button ID="Button1" runat="server" Text="PostBack" 
            onclick="Button1_Click" style="height: 26px; width: 85px" />
        <br /><br />
        Selected Date:<asp:Label ID="Label1" runat="server"></asp:Label>
        </div>
    </form>

1 Ответ

3 голосов
/ 14 марта 2012

Замените ваш MaskedEditValidator следующим:

<asp:MaskedEditValidator ID="MaskedEditValidator1"  runat="server"
ControlExtender="TextBox1_MaskedEditExtender" ControlToValidate="TextBox1"
IsValidEmpty="False" EmptyValueMessage="Invalid Date" 
InvalidValueMessage="The Date is not valid!"> 
</asp:MaskedEditValidator> 

Главное, чтобы вам понадобилось InvalidValueMessage и / или EmptyValueMessage вместо ErrorText.

...