Как насильно обновить инпут через js?

На фрилансе я часто выполняю задания, связанные с обработкой текста в инпутах, и часто пишу юзерскрипты себе в помощь. И заметил, что если я меняю через свой скрипт текст в инпуте, у меня он меняется, но не сохраняется при отправке данных на сервер. То есть мне нужно клацнуть что-то в инпуте, чтобы текст обновился (я так понимаю, чтобы вызывалось событие onChanged). Условный код:

let inp = document.querySelector("#input_id");
inp.value = "Что-то поменял в тексте";

Есть ли какой-то способ насильно обновить инпут? (использую tampermonkey)


Ответы (1 шт):

Автор решения: nazarpunk

Если нужно событие onchange, то можете сами его вызвать.

let inp = document.querySelector("#input_id");
inp.value = "Что-то поменял в тексте";

inp.dispatchEvent(new Event('change',{bubbles:true}));
→ Ссылка