0

我已经阅读了 asp.net 上的Masked Edit 和 Phone Number控件,并在这个主题上浏览了一段时间,但没有找到关于为什么会发生这种行为的答案。
我定义了以下 MaskedEditExtender 用于电话号码。我希望在将信息输入文本框之前显示掩码,并在输入时和有效输入后都保留。

<ajax:MaskedEditExtender ID="mee1" runat="server" Mask="999-999-9999" 
 AcceptNegative="None" MessageValidatorTip="true" TargetControlID="tbBox"
 MaskType="Number" ClearMaskOnLostFocus="false" ClearTextOnInvalid="false">

我相信像上面这样的简单定义会起作用,但表单的行为是不稳定的。输入值之前掩码可见(当文本框为空时),但在输入掩码时会消失。此外,在输入后,除非我单击文本框然后再返回,否则掩码将不再可见。一旦我让面具随着条目重新出现,它似乎仍然存在。

这个控件是坏了还是我错过了一些基本的东西?

非常感谢您的帮助!

4

1 回答 1

0

我希望这对其他人有帮助。此问题是由 PreRender 方法中的单个语句引起的。

tbBox.MaxLength = <some integer>;

显然,通过将这个简单的值更改为文本框的属性会引起各种奇怪。
如果有人知道为什么这会导致失败,我很想听听。谢谢!

于 2012-04-02T17:06:59.263 回答