Даже если вы изменяете значения объектов input
DOM, этого недостаточно для инициирования обнаружения изменений базовых библиотек Angular, в результате чего форма выглядит «пустой».
СледующееПример чистого JS работает на Chrome, но я не проверял его в Internet Explorer:
let email = document.getElementById("email");
let password = document.getElementById("password");
let button = document.getElementsByTagName("button")[0];
email.value = 'someone@example.com';
password.value = 'yourpassword';
// Trigger change detection
email.dispatchEvent(new Event('input'));
password.dispatchEvent(new Event('input'));
button.click();
В случае, если dispatchEvent
не работает в IE, вы можете попробовать с createEvent
и initEvent
.Смотрите dispatchEvent не работает в IE11