JS Автоматическое заполнение полей
Задача вставить текст в input. Однако этого добиться я не могу. Пробовал следующие способы:
№1 (Текст сбрасывается при создании любого события, например, щелчка кнопкой мыши по форме)
inputField.value = 'TEXT';
№2 (Аналогично №1)
inputField.value = 'TEXT'
inputField.dispatchEvent(new Event('input', { bubbles: true }));
№3 (Фокусировка происходит, а вставка текста - нет)
inputField.dispatchEvent(new Event('focus', { bubbles: true, cancelable: true }));
const pasteEvent = Object.assign(new Event('paste', { bubbles: true, cancelable: true }), {
clipboardData: {
getData: (type = pasteType) => 'PASTED TEXT',
},
});
inputField.dispatchEvent(pasteEvent);
input:
<input data-marker="code-input" name="code" maxlength="20" autocomplete="off" placeholder="Ввод" type="text" class="input-input-Zpzc1" value="">
Ответы (1 шт):
Автор решения: hlearn
→ Ссылка
Object.getOwnPropertyDescriptor(HTMLInputElement.prototype, "value").set.call(inputField, "TEXT");