number
Тип має step
значення контрольного числа , які є дійсними (поряд з max
і min
), який по замовчуванням 1
. Це значення також використовується реалізаціями для крокових кнопок (тобто натискання збільшується на step
).
Просто змініть це значення на те, що підходить. На гроші, мабуть, очікуються два десяткових знаки:
<input type="number" step="0.01">
(Я також встановив min=0
би, якщо це може бути лише позитивним)
Якщо ви хочете дозволити будь-яку кількість десяткових знаків, ви можете використовувати step="any"
(хоча для валют, я рекомендую дотримуватися 0.01
). У Chrome & Firefox крокові кнопки збільшуються / зменшуються на 1 при використанні any
. (завдяки відповіді Міхала Стефанова за вказівку any
, і дивіться відповідну специфікацію тут )
Ось ігровий майданчик, який показує, як різні дії впливають на різні типи введення:
<form>
<input type=number step=1 /> Step 1 (default)<br />
<input type=number step=0.01 /> Step 0.01<br />
<input type=number step=any /> Step any<br />
<input type=range step=20 /> Step 20<br />
<input type=datetime-local step=60 /> Step 60 (default)<br />
<input type=datetime-local step=1 /> Step 1<br />
<input type=datetime-local step=any /> Step any<br />
<input type=datetime-local step=0.001 /> Step 0.001<br />
<input type=datetime-local step=3600 /> Step 3600 (1 hour)<br />
<input type=datetime-local step=86400 /> Step 86400 (1 day)<br />
<input type=datetime-local step=70 /> Step 70 (1 min, 10 sec)<br />
</form>
Як завжди, додам швидку примітку: пам’ятайте, що перевірка на стороні клієнта - просто зручність для користувача. Ви також повинні перевірити на сервері!