Wie, um text auf versteckte Textfeld mit Java WebDriver
Ich versuche zu sendkeys, um eine input,aber ich weiß nicht, warum es mich warnt, wie diese:
org.openqa.Selen.InvalidElementStateException: Element darf nicht ausgeblendet werden, deaktiviert oder schreibgeschützt ist (ACHTUNG: Der server lieferte keine stacktrace-Informationen)
Den HTML-Quelltext der Seite:
<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>
Mein code:
driver.findElement(By.cssSelector("#mini-7 > input.mini-textbox-input")).clear();
driver.findElement(By.cssSelector("#mini-7 > input.mini-textbox-input")).sendKeys("yy");
Dann ändere ich meinen code wie folgt:
JavascriptExecutor jse = (JavascriptExecutor)driver;
((JavascriptExecutor) jse).executeScript("arguments[0].type ='text';",driver.findElement(By.xpath("//span[@id='mini-7']/input[2]")));
Aber dieses mal wirft js-Fehler. Warum?
Ich sendkeys verwenden, um die erste Eingabe, wird dieser Eingang nicht verborgen
haben Sie versucht, mit aktivierten "VERSTECKT" ? IE hat einige Probleme
Ich reparierte ,wie dies:JavascriptExecutor jse = (JavascriptExecutor)driver; ((JavascriptExecutor) jse).executeScript("arguments[0].Stil.Sichtbarkeit = 'sichtbar';", - Treiber.findElement(By.xpath("//span[@id='mini-7']/input"))); aber ich noch nicht kenne, warum
Welche Sprache haben Sie? Java? C#? oder was?
Ich reparierte ,wie dies:JavascriptExecutor jse = (JavascriptExecutor)driver; ((JavascriptExecutor) jse).executeScript("arguments[0].Stil.Sichtbarkeit = 'sichtbar';", - Treiber.findElement(By.xpath("//span[@id='mini-7']/input"))); aber ich noch nicht kenne, warum
Welche Sprache haben Sie? Java? C#? oder was?
InformationsquelleAutor | 2012-12-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diesen Eingang könnte noch css-Eigenschaft
visibility: hidden
oderdisplay: none
. Das ist, was Ausnahme ist, sagen Sie. Überprüfen Sie alle Eigenschaften, die mit browser-dev-tools.InformationsquelleAutor Alex Okrushko
Zunächst muss es ändern Sie den Wert des type-Attributs als text aus verborgenen. Nun, Sie sind in der Lage, geben Sie auf, dass text durch die Verwendung von WebDriver. So, der gesamte code für die Eingabe mit WebDriver Verwendung von Java und Javascript wie folgt:
1. input-Feld, welches nicht versteckt ist, verwenden Sie den absoluten Pfad für cssSelector.
InformationsquelleAutor Ripon Al Wasim
Was Sie tun können, in diesem Fall macht das element sichtbar durch ändern der css-tag für
oder
mit javascript vor dem abschicken Schlüssel zu Ihr.
InformationsquelleAutor Santiago Hernandez