我正在尝试使以下内容有效到dd-MMM-yyyy。
日历扩展程序将此格式传递给文本框,但从不在文本框中显示。
验证消息显示几分之一秒后,您看到的只是该标记
__-___-____
示例代码:
<ajaxToolkit:CalendarExtender runat="server" Format="dd-MMM-yyyy"
TargetControlID="DOB" />
<ajaxToolkit:MaskedEditValidator ID="DOBMaskedEditValidator"
EmptyValueBlurredText="DOB required" EmptyValueMessage="DOB required"
InvalidValueBlurredMessage="DOB invalid" InvalidValueMessage="DOB invalid"
runat="server" ControlExtender="DobMaskedEditExtender"
SetFocusOnError="true" Display="Dynamic" ControlToValidate="DOB"
IsValidEmpty="false" />
<ajaxToolkit:MaskedEditExtender ID="DobMaskedEditExtender" runat="server"
MaskType="Date" TargetControlID="DOB" Mask="99-LLL-9999" CultureName="en-GB"
ClearMaskOnLostFocus="false" />我一直在看各种例子,但似乎不能确定问题是什么。有没有人知道我们如何使用自定义日期格式来做这件事?我是否应该将MaskType=Date与自定义日期格式一起使用?
发布于 2011-11-30 00:31:45
抱歉,伙计们忽略了显而易见的事情。我遗漏了ValidationExpression属性。我想因为我已经在MaskedEditExtender中指定了格式,所以我认为它将与验证器一起使用。
有很多示例显示了如下所示的正则表达式:
"^(0?[1-9]|[12][0-9]|3[01])-(jan|Jan|JAN|feb|Feb|FEB|mar|Mar|MAR|apr|Apr|APR|may|
May|MAY|jun|Jun|JUN|jul|Jul|JUL|aug|Aug|AUG|sep|Sep|SEP|oct|Oct|OCT|nov|Nov|NOV|
dec|Dec|DEC)-(19|20)\d\d\s([0-1][0-9]|[2][0-3]):([0-5][0-9])$"但我需要它在多种语言中工作,所以我选择了一个更基本的:
"(^\d{2}\-?\w{3}\-?\d{4}$)"现在可以正常工作了。
完整的工作示例:
<ajaxToolkit:CalendarExtender runat="server" Format="dd-MMM-yyyy"
TargetControlID="DOB"></ajaxToolkit:CalendarExtender>
<ajaxToolkit:MaskedEditValidator ID="DOBMaskedEditValidator"
ValidationExpression="(^\d{2}\-?\w{3}\-?\d{4}$)"
EmptyValueBlurredText="<%$Resources:Resource,DOBRequired%>"
EmptyValueMessage="<%$Resources:Resource,DOBRequired%>"
InvalidValueBlurredMessage="<%$Resources:Resource,DOBInvalid%>"
InvalidValueMessage="<%$Resources:Resource,DOBInvalid%>"
runat="server" ControlExtender="DobMaskedEditExtender"
SetFocusOnError="true" Display="Dynamic" ControlToValidate="DOB"
IsValidEmpty="false"></ajaxToolkit:MaskedEditValidator>
<ajaxToolkit:MaskedEditExtender ID="DobMaskedEditExtender"
ClearTextOnInvalid="false" runat="server" TargetControlID="DOB"
Mask="99-LLL-9999" CultureName="en-GB" ClearMaskOnLostFocus="false" >
</ajaxToolkit:MaskedEditExtender>https://stackoverflow.com/questions/8313957
复制相似问题