我有一个带有 MaskedEditExtender 的文本框。当我输入文本时,我得到的输出是混乱的,有些数字重复,有些数字丢失。如果我删除 MaskedEditExtender,文本框会正常执行,但当然不允许我为文本框使用输入掩码。我已经尝试了 MaskedEditExtender 的各种选项组合,但除去 MaskedEditExtender 可以解决问题。这可能是什么原因造成的?我可以添加或删除一些选项来解决这个问题吗?
这是一个示例:我拥有的字段之一是带有掩码 (999) 999-9999 的电话字段。显示表单时,在输入任何内容之前,它看起来像这样:
(___) ___-____
这是期望的行为。但是,当我输入一个数字时,比如 1234567890,它会显示为:
112_)233455660987_-____
1、2、3、5、6重复,7、8、9、0以相反的顺序出现。更不用说面具似乎被忽略了。
如果您需要更多信息,请告诉我。我真的很想知道问题是什么以及如何解决它。如果我的问题被立即降级,我不能这样做。谢谢!
添加完整代码:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="CtlCheckOutAddressConfirm.ascx.cs" Inherits="App_Controls_CtlCheckOutAddressConfirm" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>
<script language="javascript" type="text/javascript">
function checkClearZip()
{
var bx = document.getElementById('<%=TxtZip.ClientID %>').value
if (bx == "_____")
{
document.getElementById('<%=TxtZip.ClientID %>').value = "";
}
}
function checkClearPhone()
{
var bx = document.getElementById('<%=TxtPhone.ClientID %>').value
if (bx == "(___) ___-____")
{
document.getElementById('<%=TxtPhone.ClientID %>').value = "";
}
}
script>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel runat="server" ID="updCart" UpdateMode="Always">
<ContentTemplate>
<div>
<table>
<tr><td align="right">
<font style=" font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height:20px; color: #575a61;">*Phone</font>
</td><td align="left">
<asp:TextBox ID="TxtPhone" MaxLength="15" onblur="checkClearPhone();" runat="server" BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px" Height="28px" Width="300px" Font-Size="X-Large"></asp:TextBox><br />
<ajaxToolkit:MaskedEditExtender ID="MskPhone" runat="server"
TargetControlID="TxtPhone"
Mask="(999) 999-9999"
MessageValidatorTip="true"
OnFocusCssClass="MaskedEditFocus"
OnInvalidCssClass="MaskedEditError"
MaskType="None"
DisplayMoney="None"
AcceptNegative="None"
ClearMaskOnLostFocus="false" />
</td></tr>
<tr><td align="right">
<font style=" font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height:20px; color: #575a61;">*E-mail</font>
</td><td align="left">
<asp:TextBox ID="TxtEmail" MaxLength="50" runat="server" BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px" Height="28px" Width="300px" Font-Size="X-Large"></asp:TextBox><br />
</td></tr>
</table>
<div class="spacer"></div>
<center><asp:ImageButton runat="server" ID="BtnContinue" ImageUrl="~/images/Buttons/bebtn-save.gif" OnClick="BtnContinue_Click" /></center>
<asp:HiddenField ID="HdnMerch" runat="server" />
<asp:HiddenField ID="HdnAdd" runat="server" />
</div> </ContentTemplate>
</asp:UpdatePanel>