Отключить ввод 0 (ноль) в первой позиции символа - PullRequest
3 голосов
/ 02 февраля 2012

Я использую цифровой плагин Jquery, который позволяет вводить только числовые значения на входе

$("#tbQuan").numeric();

В дополнение к тому, что делает этот плагин, мне нужно отключить ввод '0' (ноль) в первой позиции символа.

Любая помощь будет оценена.

Ответы [ 5 ]

9 голосов
/ 02 февраля 2012

Попробуйте это.

$('input').keypress(function(e){ 
   if (this.value.length == 0 && e.which == 48 ){
      return false;
   }
});

Демо

1 голос
/ 16 октября 2017

Для события keyUp

$('.numeric').keyup(function(event) {

var currentVal = $(this).val();

if (currentVal.length == 1 && (event.which == 48 || event.which == 96)) {
  currentVal = currentVal.slice(0, -1);
}
$(this).val(currentVal);

});

DEMO

  • убедитесь, что добавлены события 48 и 96 для поддержки цифровой клавиатуры 0 и клавиатуры 0.
  • добавив таким образом, пользователь узнает, что начальные нули не допускаются
1 голос
/ 02 февраля 2012

Как-то так должно начаться:

$("#tbQuan").numeric().keyup(function (e) {
    var val = $(this).val();
    while (val.substring(0, 1) === '0') {   //First character is a '0'.
        val = val.substring(1);             //Trim the leading '0'
    }
    $(this).val(val);   //update input with new value
});
0 голосов
/ 06 ноября 2017

если текстовое поле в маске, то :::

$('#numeric').keyup(function(event) {

    var currentVal = $(this).val();

    if (currentVal.substring(0, 1) === '0' && (event.which == 48 || event.which == 96)) {

      currentVal=currentVal.substring(1);
    }
    $(this).val(currentVal);
  });

ИЛИ *******************************

$("#numeric").keyup("input propertychange paste", function (e) {
var val = $(this).val()
var reg = /^0/gi;
if (val.match(reg)) {
    $(this).val(val.replace(reg, ""));
    alert("Please phone number first character bla blaa not 0!");
    $(this).mask("999 999-9999");

}

});


Первый образец DEMO:

Второй образец DEMO:

0 голосов
/ 02 февраля 2012

Я бы начал с того, чтобы попробовать что-то вроде этого:

$('input').keyup(function(){ 
   if ( $(this).val().length === 1 && $(this).val() === 0 ){
      alert('No leading zeroes!');
   }
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...