【问题标题】:Why is my MaskedEditValidator is not working?为什么我的 MaskedEditValidator 不工作?
【发布时间】:2012-03-13 16:57:26
【问题描述】:

我的页面中有以下控件,我的 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>

【问题讨论】:

  • 我复制了上面的页面,MaskedEditExtender 工作正常。你是说 MaskedEditValidator 吗?
  • 是的。我的意思是 MaskedEditValidator。如果取消注释,并注释 CompareValidator,并输入无效日期,则不会显示错误消息“日期无效”。

标签: asp.net maskededitextender comparevalidator


【解决方案1】:

将您的 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。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-17
    • 2017-09-20
    • 2012-04-14
    • 2016-09-15
    • 2012-02-14
    • 2012-08-10
    • 2013-07-27
    • 1970-01-01
    相关资源
    最近更新 更多