我想点击按钮:
<input type="submit" value="Stock!" class="button" tabindex="5" />
这是我的代码:
WebElement stock = driver.findElement(By.xpath("//*[@id=\"stock\"]/table/tbody/tr[4]/td/input[5]"));
stock.click();
程序运行时没有丢失任何错误,但没有点击按钮,程序没有完成任务。
答案 0 :(得分:1)
尝试使用SendKeys而不是Click。虽然看起来很奇怪,但它在很多时候对我有用。
stock.sendKeys(Keys.ENTER);
或者您可以非常简单地执行此操作,如下所示。这将自动以元素所在的特定形式提交值。生活变得轻松。
stock.submit();
您无需使用输入(type = submit)进行submit()操作。您可以使用html表单中的任何其他元素。
答案 1 :(得分:0)
删除\&#34;并用&#39;替换它。但是,您实际上没有id属性,因此无法正常工作。
尝试: &#34; //输入[@tabindex =&#39; 5&#39;]&#34;
如果实际设置了标签索引,那么应该只有一个标签索引。如果出于某种原因存在多个,则可以使用完整的xpath,但将整个xpath与编号索引一起使用确实不是一个好主意。如果有任何变化,这些可能很容易破裂。
答案 2 :(得分:0)
您可以使用cssselector,它看起来很干净。
WebElement stock = driver.findElement(By.CssSelector("input[value = 'Stock!']")).Click();
答案 3 :(得分:0)
尝试
driver.findElement(By.className(&#34;按钮&#34))点击();