キーを入力に送信しようとしていますが、なぜ次のような警告が表示されるのかわかりません。
org.openqa.selenium.InvalidElementStateException: 要素は非表示、無効、または読み取り専用であってはなりません (警告: サーバーはスタックトレース情報を提供しませんでした)
HTML ページのソース:
<span id="mini-7" class="mini-textbox mini-textbox-empty" style="border-width: 0pt; width: 342px;">
<input class="mini-textbox-input" type="text" autocomplete="off" style="width: 338px;">
<input type="hidden">
</span>
私のコード:
driver.findElement(By.cssSelector("#mini-7 > input.mini-textbox-input")).clear();
driver.findElement(By.cssSelector("#mini-7 > input.mini-textbox-input")).sendKeys("yy");
次に、コードを次のように変更します。
JavascriptExecutor jse = (JavascriptExecutor)driver;
((JavascriptExecutor) jse).executeScript("arguments[0].type ='text';",driver.findElement(By.xpath("//span[@id='mini-7']/input[2]")));
しかし、今回はjsエラーがスローされます。なんで?
最初の入力に sendkeys を使用します。この入力は非表示ではありません