Dado:
<input class="inputField_input__2B0dA" maxlength="7" id="establishedYear" data-testid="date-input" type="month" value="">Que en la página es un campo de entrada que se parece a: ----- ---- [símbolo de calendario]
El primero ----- parece el mes, y el siguiente ---- el año => Abril 2020
Pero la única forma de seleccionar la fecha real es haciendo clic en el calendario y haciendo clic en un mes
Traté de escribir el valor del elemento con la cadena requerida usando js:
// JavascriptExecutor jse = (JavascriptExecutor) getDriver(); // jse.executeScript("document.getElementById('establishedYear').setAttribute('value', '2022-04')");Lo cual funciona hasta la siguiente acción, cuando hago clic en otro elemento, el valor establecido con JS desaparece.
PD. Si trato de escribir manualmente la fecha, funcionaría para el mes, pero luego para la fecha si falla, solo cambia el último carácter como para 2022, escribiría 0002
Además, si trato de hacer clic básicamente en el ícono del calendario, luego hago clic en el mes con selenio, no puedo hacerlo porque, cuando intento crear un selector para los elementos de fecha del calendario, no puedo encontrarlos en el DOM.
Así que hago clic en el ícono del calendario, no aparecen cambios en el dom (no se agregan nuevos elementos al dom)
¿Alguna sugerencia sobre cómo abordar este problema?
Resuelto esto por:
ocupSelfEmpPage.establishedYearInput.click(); ocupSelfEmpPage.establishedYearInput.sendKeys(Keys.SPACE); ocupSelfEmpPage.establishedYearInput.sendKeys(Keys.UP); ocupSelfEmpPage.establishedYearInput.sendKeys(Keys.ENTER);Entonces, haga clic en la entrada, luego espacio para abrir el calendario y hasta seleccionar enero, luego ingrese para guardarlo