Как сделать type= "number" только для положительных чисел



В настоящее время у меня есть следующий код



<input type="number" />


получается что-то вроде этого



enter image description here



маленькие селекторные вещи справа позволяют номеру перейти в отрицательный. Как мне это предотвратить?



у меня возникли сомнения по поводу использования type="number", это вызывает больше проблем, чем это решение, я собираюсь здравомыслие проверить его в любом случае, так что я должен просто вернуться к использованию type="text"?

726   11  

11 ответов:

добавить a min атрибут

<input type="number" min="0">

Это зависит от того, насколько точно вы хотите быть. Это вы хотите принимать только целые числа, чем:

<input type="number" min="1" step="1">

Если вы хотите поплавки, например, с двумя цифрами после запятой:

<input type="number" min="0.01" step="0.01">

Я нашел другое решение, чтобы предотвратить отрицательное число.

<input type="number" name="test_name" min="0" oninput="validity.valid||(value='');">

вы можете заставить вход содержать только положительное целое число, добавив onkeypress внутри input тег.

<input type="number" onkeypress="return event.charCode >= 48" min="1" >

здесь event.charCode >= 48 гарантирует, что возвращается только число, большее или равное 0, в то время как min тег гарантирует, что вы можете прийти к минимуму 1, прокручивая в строке ввода.

попробовать

<input type="number" pattern="^[0-9]" title='Only Number' min="1" step="1">

добавьте этот код в свой тип ввода;

onkeypress="return (event.charCode == 8 || event.charCode == 0 || event.charCode == 13) ? null : event.charCode >= 48 && event.charCode <= 57"

например:

<input type="text" name="age" onkeypress="return (event.charCode == 8 || event.charCode == 0 || event.charCode == 13) ? null : event.charCode >= 48 && event.charCode <= 57" />

вы можете использовать следующее, чтобы сделать type="number" принимать только положительные числа:

input type="number" step="1" pattern="\d+"

<input type="number" min="1" step="1">

С типом ввода текста вы можете использовать это для лучшей проверки,

return (event.keyCode? (event.keyCode == 69 ? false : event.keyCode >= 48 && event.keyCode <= 57) : (event.charCode >= 48 && event.charCode <= 57))? true : event.preventDefault();

попробуйте это:

Yii2 : Validation rule 

    public function rules() {
    return [
['location_id', 'compare', 'compareValue' => 0', 'operator' => '>'],
        ];
}

попробуйте это. Это работает как шарм. Никакого дополнительного кода JavaScript не требуется.

onkeypress="return event.charCode

вводим номер в тег input. вроде этого.

<input type="number" min="0" max="" onkeypress="return event.charCode >= 48" class="form-control"  placeholder="Enter number(0-10)">

спасибо.

Comments

    Ничего не найдено.