Selen und klicken auf ein "a" href=javascript
Ich versuche, auf einen link zu klicken und habe Schwierigkeiten. Der entsprechende HTML code ist:
<div id="adHocAddDocDiv" style="display: block;">
<a href="javascript:hideDiv();" style="color:#000">
Close window
</a>
<table border="0">
<tbody></tbody>
</table>
</div>
Code habe ich:
driver.findElement(By.xpath("//*[@id='adHocAddDocDiv']/a")).click();
Dieser findet das richtige element, aber es scheint nicht zur Ausführung der JavaScript um das Fenster zu schließen, das passiert, wenn ich manuell auf den link klicken. Irgendwelche Ideen?
UPDATE: Hier ist der code, der schließlich arbeitete:
WebElement element = driver.findElement(By.xpath("//[@id='adHocAddDocDiv']/a"));
JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].click();", element);
Versuchen Sie, verwenden Sie `//a[@href=\"javascript:hideDiv()`.
Das sieht unvollständig.
gibt es einen einzelnen hyperlink in das div??? wenn nicht, dann was ist die position an der das href-link
Natürlich ist es unvollständig 🙂
Das Tat es nicht. Ich selbst habe versucht zu tun, ein sendkeys(keys.geben Sie). Gleiche Ergebnisse. Ich habe geprüft, ich hatte das richtige element, weil ein gettext liefert den richtigen text. Es wirkt wie es wird geklickt, aber es ist nicht die Aktion durchführt. Es ist nicht die Ausführung der javascript:hideDiv(). Gibt es keine Möglichkeit, Selen zu führen?
Das sieht unvollständig.
gibt es einen einzelnen hyperlink in das div??? wenn nicht, dann was ist die position an der das href-link
Natürlich ist es unvollständig 🙂
//a[@href=\"javascript:hideDiv()"\]
Das Tat es nicht. Ich selbst habe versucht zu tun, ein sendkeys(keys.geben Sie). Gleiche Ergebnisse. Ich habe geprüft, ich hatte das richtige element, weil ein gettext liefert den richtigen text. Es wirkt wie es wird geklickt, aber es ist nicht die Aktion durchführt. Es ist nicht die Ausführung der javascript:hideDiv(). Gibt es keine Möglichkeit, Selen zu führen?
InformationsquelleAutor GregMa | 2014-06-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich kommen oft über Elemente, WebDriver scheint nicht in der Lage sein, um zu klicken. In diesen Fällen habe ich das folgende Muster verwenden:
Dies ist die C# - version. Ich bin sicher, dass die Java-form ist sehr ähnlich.
wow, Sie mein Leben zu retten
Wie würden Sie tun dies in Python?
InformationsquelleAutor CynicalBiker
Versuchen deutlicher:
Gibt es frames beteiligt? Sind Sie sicher, dass Sie das richtige element? Woher weißt du das?
Das element ist in einem frame. Ich habe umgestellt auf dieses Bild und es immer noch nicht das Fenster zu schließen. Es ist nicht mit einer Fehlermeldung, dass es nicht finden können, das element, es tatsächlich auszuführen .klicken Sie auf(), es gerade scheint nicht zu sein, tatsächlich laufen die hideDiv() javascript-Funktion, um das Fenster zu schließen.
InformationsquelleAutor SiKing
Meine Vermutung ist, dass es mehr
<a>
's sofort nach, dass div, und es ist nicht eindeutig genug. Versuchen Sie dies:InformationsquelleAutor sircapsalot