JS. С мышкой значение input изменяется, а с помощью кода (elem.value) нет
В одном сайте есть форма input, где стандартное число 10.
С помощью мышки изменяется без проблем. А если с помощью кода: document.querySelector("input#tip-199").value=15; изменять значение на 15, то через секунду возвращается исходное число (т.е. 10, видимо какая-то защита стоит).
Пробовал ещё такой вариант, с фокусом:
var ett = document.querySelector("input#tip-199").value=15;
var foc = new Event("focus");
var bl = new Event("blur");
ett.dispatchEvent(bl);
ett.dispatchEvent(foc);
Но результата нет.
Как сделать так, чтобы в форме можно было полноценно изменять значение?
Ответы (1 шт):
Автор решения: ksa
→ Ссылка
Твой вариант вообще по ошибке вылетал... Поскольку переменная ett была равна не собственно элементу.
Вот работающий пример.
document.querySelector('button').addEventListener('click', _ => {
var ett = document.querySelector("input#tip-199")
ett.value = 15;
var foc = new Event("focus");
var bl = new Event("blur");
ett.dispatchEvent(bl);
ett.dispatchEvent(foc);
})
<input id='tip-199' type='number' value='10' />
<button>Test</button>