2016-02-10 1 views
0

Я пытаюсь скрыть текстовое поле, чтобы пользователь мог вводить два типа документов. Вот код, в котором я пытаюсь замаскировать, соответственно длине документа:Я не могу ввести целое число

$("#TextBoxDoc").keypress(function() { 
      try { 
       $("#TextBoxDoc").unmask(); 
      } catch (e) { } 

      var len = $("#TextBoxDoc").val().length; 

      if (len < 11) { 
       $("#TextBoxDoc").mask("999.999.999-99"); 
      } else if (len >= 11) { 
       $("#TextBoxDoc").mask("99.999.999/9999-99"); 
      } 
     }); 

код текстового поля является следующее:

<asp:TextBox ID="TextBoxDoc" CssClass="form-control" ClientIDMode="Static" runat="server"></asp:TextBox> 

Единственная проблема, что когда я попробуйте написать ввод, это только позволяет мне написать один символ. Когда я нажимаю другое число, он заменяет первый.

Я знаю, что это имеет какое-то отношение к событию нажатия клавиши, но я не знаю, как это преодолеть.

+0

Я создал идентичное текстовое поле твое и переплетены ту же функцию, и, кажется, работает хорошо для меня на Chrome. Я подозреваю, что это может быть проблема с браузером. Вы пробовали разные браузеры? – BoltKey

+0

Я пробовал в 3 основных браузерах (IE, Chrome, Firefox), и он продолжает давать мне ту же проблему. Я попытался изменить текстовое поле или даже переписать функцию, но она не работает. –

+0

Как создать минимальный пример, демонстрирующий вашу проблему? – Terry

ответ

0

Я пробовал свой код на jsfiddle. Он отлично работает с простыми html и jquery. Я думаю, что есть что-то делать с asp.net. Я не уверен, что это такое, но надеюсь, что это помогло.

https://jsfiddle.net/8hsgzpma/example

 Смежные вопросы

  • Нет связанных вопросов^_^