2012-06-06 4 views
0

Я пытаюсь создать текстовое поле для ввода дат, которое принимает только цифры. Если кто-либо вводит любой другой символ, нет необходимости отображать его в текстовом поле, и курсор должен оставаться в том же положении (нет необходимости переходить к следующей позиции символа). Если введенное значение является числом, необходимо отобразить его в текстовом поле и переместить курсор на следующий уровень. Итак, текстовое поле, наконец, содержит только числа.Как ограничить текстовое поле, чтобы ввести только цифры

Я использую следующий код,

$("#date").keyup(function(event){ 

     //var c=(event).keyCode; 
     var c= String.fromCharCode(event.keyCode); 
     var cval = $(this).val(); 

     alert("Characters="+c); 
     if(isNumber(c)) 
      $(this).val(cval+c); 

     } 

Расширенный Спасибо,

VSoft

ответ

1

В HTML5 вы можете использовать вход type в number.

Вы можете сделать это:

$('#date').keyup(function() { 
    this.value = this.value.replace(/[^0-9\.]/g,''); 
}); 

Я думаю, что вам нужно jQuery Input Mask Plugin

+0

К сожалению INOUT типа = "номер «Не работает для меня. – user1431849

+0

@ user1431849 проверить ссылку в моем ответе, я думаю, вам нужно что-то вроде этого. – thecodeparadox

0

вы должны запустить функцию только тогда, когда фокус находится на запрашиваемом текстовое поле

+0

Извините, я не получил u..Could u plz explain ... – user1431849

+0

Я имею в виду, когда пользовательский фокус вводит ваше текстовое поле, вы должны добавить функцию для проверки ввода пользователя .... $ ('# yourInput'). Focus (function() { var userInput = $ ('# yourInput'). val(); }); –

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