这是HTML:
<a class="editorButton" href="javascript:validateAndSubmit(document.form,'/Dispatcher?page=ExpressReqEditor&element=Submit&sig=R2pneG9IbTVSaFh0MEo4ZWFEQkxlUWZpQkhjPTtORFpsWVRNeE56UXRaamt3TkMwMFpqaGpMV0kxWlRZdE5ESXpOREJpWVRSbU5EQmk7cGFnZTtlbGVtZW50');"> submit </a>
我已经尝试过所有我无法想到的事情。我能找到它的唯一方法是通过它的xpath:
html/body/form/table/tbody/tr/td/table/tbody/tr[52]/td[2]/a[3] >
以下是我的尝试:
driver.findElement(By.xpath("//a[contains(text(), ' Submit ')]")).click();
driver.findElement(By.xpath("//a[contains(.,' Submit ')]")).click();
driver.findElement(By.xpath("//a[contains(normalize-space(.),' Submit ')]")).click();
driver.findElement(By.xpath("//a[contains(normalize-space(.),'Submit')]")).click();
driver.findElement(By.xpath("//a[contains(text(), '  submit  ')]")).click();
driver.findElement(By.xpath("//a[contains(text(), ' submit ')]")).click();
任何帮助都会很棒
答案 0 :(得分:4)
带有class
名称和部分href
的xpath怎么样?
driver.findElement(By.xpath("//a[@class='editorButton' and contains(@href, 'javascript:validateAndSubmit')]")).click();
另请注意,XPath区分大小写,您的示例代码段混合了Submit
和submit
,这可能会有问题,您可能需要仔细检查您想要哪一个。