Триггер JavaScript настраиваемое событие в элементе iframe селена, поскольку входные значения send_keys не сохраняются - PullRequest
2 голосов
/ 17 июня 2020

Попытка вызвать JavaScript событие 'change' для элемента, присутствующего в iframe. Ниже мой кодовый след

// get the iframe window
var iframeDoc = document.getElementsByTagName("iframe")[0].contentWindow.document;

// get the target element
var targetElement = iframeDoc.querySelector("#some_id");

// add a listener to the target element to make sure the event is fired
targetElement.addEventListener("onchange", function(){console.log("change event triggered");});

// set value in the target element
targetElement.value = "abc";

// now build the custom event
var customEvent = iframeDoc.createEvent("HTMLEvents");
customEvent.intEvent("change", false, true);

// trigger the event on the element
targetElement.dispatchEvent(customEvent)

// now click on the save button

Мы не получаем никаких ошибок после выполнения последней строки и видим сообщение в консоли. Однако значение, введенное селеном, не сохраняется при нажатии кнопки Save в форме.

Стек технологий: Java, IE 11, селен 3.141.59 Disabled Native Events

1 Ответ

0 голосов
/ 25 июня 2020

Заявлено, что минимальный воспроизводимый пример очень поможет (вы говорите о некоторых значениях, некоторых кнопках и какой-то форме о том, что мы ничего не знаем),

onchange - это элемент DOM для прослушивания события change, фактическое имя события - change.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...