Я пытаюсь изменить значение элемента тега ввода.
Вот тег: <input type="hidden" id="hiRequestAccessType" data-bind="value: requestAccessTypeStr" value="2">
Я хочу изменить значение на "2,1".
Основано на обсуждении на Вместо этого установите значение вводаof sendKeys () - селен узел webdriver nodejs , я пытался использовать execute_script, но значение остается неизменным.
Я пробовал это:
passwordcheck_input_element = driver.find_element_by_xpath('//*[@id="hiRequestAccessType"]') . ###THIS DOESNT THROW ERRORS
new_value = "2,1"
driver.execute_script("arguments[0].value = arguments[1].toString()", passwordcheck_input_element, new_value)
# driver.execute_script("arguments[0].value = '" + new_value + "'", passwordcheck_input_element) . ###TRIED THIS IN LIEU OF ABOVE
Для любой альтернативы код выполняется, но значение остаетсябез изменений от визуального осмотра.Я также попробовал две вышеупомянутые альтернативы, используя 'setAttribute' вместо прямого, того же (без изменений) результата.
Обратите внимание, что веб-страница - это форма, где нажатие на флажок изменяет значение на "2,1", так какжелательно.(Но если я пытаюсь найти элемент флажка, я получаю сообщение о том, что он не активен, следовательно, этот маршрут).
Теперь, что странно, я знаю, что он делает что-то прямо за кулисами, потому что я пытался запросить значениеатрибут до и после моего вызова execute_script, и он правильно выводит новое значение для последнего.Однако, как я уже сказал, пользовательский интерфейс не показывает это изменение;далее, когда я продолжаю и нажимаю кнопку отправки еще ниже, используется старое значение, потому что я не получаю страницу, которая должна загружаться, если использовалось новое значение.