<td id="ext-gen383" class="x-toolbar-cell">
<table id="ext-comp-1144" class="x-btn x-btn-icon" cellspacing="0">
<tbody class="x-btn-small x-btn-icon-small-left">
<tr>
<tr>
<td class="x-btn-ml">
<td class="x-btn-mc">
<em class=" x-unselectable" unselectable="on">
**<button id="ext-gen384" class="x-btn-text x-tbar-page-last" type="button">** </button>
</em>
我试图点击按钮。请参阅上面的html。尝试了很多方法。 例如:
//*[contains(@class,'x-btn-text x-tbar-page-last')] or
//button[contains(@class,'x-btn-text x-tbar-page-last')]
但仍然没有工作。
答案 0 :(得分:0)
如果没有看到页面的完整html,很难分辨。由于ExtJS生成随机id,因此找不到任何好的属性。
我建议只使用XPath,然后使用索引(如果您的页面有多个按钮元素):
//button[1]
并相应地调整索引,直到您获得正确的单击按钮。
同样,您可以使用driver.findElements的WebDriver API,它将返回所有匹配项的集合,然后您可以将索引应用于该集合以获取正确的按钮。
答案 1 :(得分:0)
我猜测只生成了最后的数字。尝试:
By.cssSelector("em.x-unselectable > button[id^='ext-gen']")
另外,看一下<em>
,您确定该课程没有使按钮不可点击吗?通过名称,它看起来像是禁用了点击。