@mvr1976
Учу html, css, js

Как привести к числу значение input?

Добрый вечер!
Ситуация вроде бы простая, но разобраться не могу.
Есть инпут:<input type = "text" id = "timer" value = 25 >,
Извлекаю его значение и увеличиваю на 1:
var minuteWork = document.getElementById("timer").value;
function asc(){document.getElementById("timer").value = minuteWork +=1;}

Выдает не 26, 27, а 251, 2511 и т.д.
Ни унарный плюс перед переменной, ни parseInt не помогают.
  • Вопрос задан
  • 1333 просмотра
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Ни унарный плюс перед переменной, ни parseInt не помогают.
И то и другое прекрасно работает.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
skamenetskiy
@skamenetskiy
Full stack developer
Для начала, правильный HTML:
<input type="text" id="timer" value="25">
JavaScript:
var timer = document.getElementById("timer"),
    minuteWork = timer.value;

function asc() {
    timer.value = (parseInt(minuteWork) + 1);
}


Должно сработать, думаю ошибка тут в = и += в одной строке. Результат может быть непредсказуемый.
Ответ написан
Комментировать
@GeneD88
QA
function asc(){document.getElementById("timer").value = +minuteWork +1;}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы