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>
Як завжди, додам швидку примітку: пам’ятайте, що перевірка на стороні клієнта - просто зручність для користувача. Ви також повинні перевірити на сервері!