HTML Input заменяет предыдущий текст - PullRequest
0 голосов
/ 27 апреля 2018

Я пытаюсь сделать так, чтобы вход с максимальной длиной 1 имел его так, чтобы при повторном вводе он заменял текущее значение. Пример: 1, затем введите 2, он меняется на 2.

Вот код, который я использую, чтобы текст оставался только числом (jQuery)

    $(document).ready(function() {
$("#txtboxToFilter").keydown(function (e) {
    // Allow: backspace, delete, tab, escape, enter and .
    if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
         // Allow: Ctrl+A, Command+A
        (e.keyCode === 65 && (e.ctrlKey === true || e.metaKey === true)) || 
         // Allow: home, end, left, right, down, up
        (e.keyCode >= 35 && e.keyCode <= 40)) {
             // let it happen, don't do anything
             return;
    }
    // Ensure that it is a number and stop the keypress
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
        e.preventDefault();
    }
});
});

1 Ответ

0 голосов
/ 27 апреля 2018

Вы можете сделать следующее Добавить условие else в секунду, если условие

$(document).ready(function() {
$("#txtboxToFilter").keydown(function (e) {
  
    // Allow: backspace, delete, tab, escape, enter and .
    if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
         // Allow: Ctrl+A, Command+A
        (e.keyCode === 65 && (e.ctrlKey === true || e.metaKey === true)) || 
         // Allow: home, end, left, right, down, up
        (e.keyCode >= 35 && e.keyCode <= 40)) {
         
             // let it happen, don't do anything           
             return;
    }
    // Ensure that it is a number and stop the keypress
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
      
        e.preventDefault();
    }
    else
    {
       $("#txtboxToFilter").val('');
    }
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="txtboxToFilter" maxlength="1">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...