Тип ввода = [число] преобразует float в int на дисплее - PullRequest
0 голосов
/ 20 июня 2019

Я хочу отобразить значение, скажем, 100,00 при вводе числа.Это может быть введено пользователем и работает с валютой, поэтому важно, чтобы оно отображалось.

Однако при программной установке значения на 100,00 отображаемая переменная сбрасывается на 100.

Однако, если вы пишете 100,00тогда работает нормально.Проблема в том, что на этом входе есть проверка, и значение обновляется с помощью javascript, возвращая его обратно в 100.

Редактировать: похоже, влияет только на Firefox.Я попытался добавить значение как

input.value = 100.00

input.value = parseFloat(100.00)

input.value = parseFloat(100.00).toFixed(2).

document.getElementById('test_input').value = 100.00;
<input id="test_input" type="number" step="0.01">

И JSFiddle https://jsfiddle.net/3qnL07yu/

Ответы [ 3 ]

2 голосов
/ 20 июня 2019

Вы можете обновить входное значение следующим образом:

document.getElementById('test_input').value = "100.00";

Вот обновленный код: https://jsfiddle.net/zun0aptf/4/

0 голосов
/ 20 июня 2019

Измените type="number" на type="text" и поставьте подтверждение для номера.

 <input id="test_input" type="text" step="0.01">

Обновленный код: https://jsfiddle.net/8c6n012f/1/

0 голосов
/ 20 июня 2019

Возможные пути: вы можете установить свои значения следующим образом:

 <input id="test_input" type="number" step="0.01" value="100.00">

Или

 document.getElementById('test_input').value = "100.00";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...