Я открываю веб-сайт внутри веб-сайта и пытаюсь войти в систему программно. У этого есть поле адреса электронной почты и пароля. Мой код выглядит следующим образом
webView.evaluateJavascript("javascript: " +
"var email= document.getElementById('emailId'); " +
"email.value = 'xxx@gmail.com'; " +
"var event = new Event('change');" +
"email.dispatchEvent(event);", null);
webView.evaluateJavascript("javascript: " +
"var pass= document.getElementById('password'); " +
"pass.value = 'abcd123*'; " +
"var event = new Event('change');" +
"pass.dispatchEvent(event);", null);
Я успешно ввел поля электронной почты и пароль, но состояние кнопки входа не изменилось. Его серый. После некоторых исследований я выяснил, что входное значение установлено, но внутренние события, которые должны быть вызваны после установки, не вызываются. Некоторые изменения состояния обрабатываются при изменении ввода, но они не вызываются при программной установке. Как справиться с этим?
Ручной ввод электронной почты и пароля работает нормально.