我需要通过文字找到一个web元素。我有这个xpath:
$.jqplot(...
我需要找到的文字是" next"这是李的内心。 我尝试这样的事情
"/html/body/div/div[3]/div/table[2]/tbody/tr/td/table/tbody/tr[5]/td/div/div[2]/div[1]/table/tbody/tr/td/table/tbody/tr[5]/td/div/div[1]/div/ul/li"
但它不起作用。这就是html的样子:
WebElement xnext = driver.findElement(By.xpath("//div[contains(text(),'next')]"));
答案 0 :(得分:0)
xpath存在两个问题。
首先,它是包含文本的li元素。 其次,文本区分大小写。
试试这个xpath:
$.each(playlist, function(index, val) {
playlistHtml += "<form name="form" method="post" action="../_inc/process_track_move.php?track="+val.sources[0].title"
});
可以帮助您使用xpath的一个工具是Firefox的Firebug和FirePath插件。 Firebug将允许您检查元素和firepath可以显示xpath。 xpath可能不是您正在寻找的,但至少您可以使用插件来测试您的xpath。
答案 1 :(得分:0)
试试下面提到的xpath。
注意:在执行此xpath之前,请等待几秒钟,以便您的驱动程序可以找到web元素。
//div[@class='z-paging z-paging-os']//li[contains(text(), 'Next')]
OR
使用xpath
在indexing number
下面尝试此操作。
在indexing
结束后尝试使用xpath
。在上面的html
Next
您的<li>
关键字位于xpath
标记内的第四个位置,请使用下面提到的//div[@class='z-paging z-paging-os']//li[4]
Last
仅供参考:如果您想在<li>
标记内找到last
关键字,只需更改索引编号即可。您的html
关键字位于xpath
内的第五个位置,因此last
关键字位于//div[@class='z-paging z-paging-os']//li[5]
关键字,如下所示。
point(inside:with:)