我试图在XPath中获取具有递增编号的动态元素。
这是我要查找的元素的HTML:
<a class="delete_link" data-hide-id="list_169" data-delete-action="/panel/menuitem/menudelete/id/169" href="#">Delete</a>
这是我的代码:
driver.findElement(By.xpath("//*[@id=list_"+pageID+"")).click();
其中pageID
是“ list_”后面的字符串号
我似乎无法正确地找到它的语法。我通常只能通过ID来找到它,但是如您所见,该元素没有普通的ID标识符。
答案 0 :(得分:1)
您使用了错误的属性名称@id
而不是@data-hide-id
。
尝试以下XPath表达式:
"//a[@data-hide-id = 'list_" + pageID + "']"
在整个命令中,这看起来像
driver.findElement(By.xpath("//a[@data-hide-id = 'list_" + pageID + "']")).click();