【问题标题】:Backspace or Delete key In TextBox with Masked Edit Extender in ASP.NET not working in ChromeASP.NET 中带有 Masked Edit Extender 的 TextBox 中的 Backspace 或 Delete 键在 Chrome 中不起作用
【发布时间】:2013-11-11 08:33:57
【问题描述】:
           <asp:TextBox ID="txttime" runat="server" CssClass="TextBox">'
                 Width="60px" Enabled="false" ></asp:TextBox>

          <ajax:MaskedEditExtender ID="ajaxtime" runat="server" AcceptNegative="None"
         Enabled="True" TargetControlID="txttime" MaskType="Time" AcceptAMPM="true"
       ask="99:99" CultureName="en-CA"  AutoComplete="true" AutoCompleteValue="99:00"/>

在上面的代码中删除或退格键在文本框中工作 Firefox 和 IE 但在 Chrome 中不工作.. 请帮忙..

任何建议....??

【问题讨论】:

    标签: c# asp.net cross-browser asp.net-ajax httpbrowsercapabilities


    【解决方案1】:

    这似乎是 MaskedEditExtender 中的一个错误。请参阅 this CodePlex 问题。

    您可以尝试更新到最新版本,因为它声明它已在 2013 年 4 月的版本中修复。

    另外还有一个小修复可用here

    【讨论】:

      【解决方案2】:

      Google chrome 在控件方面存在更多问题。您可以专门检查您正在运行的版本以及它需要什么 ascii 值?当您尝试使用密钥时。还有一件事,检查你的文本框标记是否正确?

      【讨论】:

      • chrome 版本 30.0.1599.101 m
      • 尝试使用 webkit(ajax 兼容);希望会有所帮助。
      【解决方案3】:

      添加下面的代码,它应该可以正常工作。谢谢。

      protected void Page_Init(object sender, EventArgs e)
              {
                  try
                  {
                      if (!ClientScript.IsStartupScriptRegistered(GetType(), "MaskedEditFix"))
                      {
                          ClientScript.RegisterStartupScript(GetType(), "MaskedEditFix", String.Format("<script type='text/javascript' src='{0}'></script>", Page.ResolveUrl("../Javascript/MaskedEditFix.js")));
                      }
                  }
                  catch (Exception ex)
                  {
                      throw ex;
                  }
              }
      

      【讨论】:

      • 为什么这样可以解决问题?请扩展您的答案,而不仅仅是发布代码。
      【解决方案4】:

      以下代码可以正常工作,将TargetControlID="txtPhone" 替换为您的文本字段ID。

      <ajax:MaskedEditExtender ID="textPhone_MaskedEditExtender" MaskType="None" runat="server"
                                      CultureAMPMPlaceholder="" CultureCurrencySymbolPlaceholder="" CultureDateFormat=""
                                      CultureDatePlaceholder="" CultureDecimalPlaceholder="" CultureThousandsPlaceholder=""
                                      CultureTimePlaceholder="" Enabled="True" TargetControlID="txtPhone" Mask="(999)-999-9999"
                                      AutoComplete="true" ClearMaskOnLostFocus="false" CultureName="en-US">
                                  </ajax:MaskedEditExtender>
      

      【讨论】:

      • 您能详细说明一下吗? OP 没有 ID 为 txtPhone 的控件 - 听起来您漏掉了部分答案。
      猜你喜欢
      • 1970-01-01
      • 2012-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-23
      • 1970-01-01
      • 2012-01-20
      • 2010-09-10
      相关资源
      最近更新 更多