请求生成动态表格中删除红叉图标的有效XPath(附HTML代码)
解决删除图标定位的XPath问题
让我来帮你搞定这个定位问题!你的原XPath无效是因为目标文本所在的div和删除图标i属于同一行的不同单元格(<td>),它们之间没有直接的父子/祖孙关系,所以直接从文本div往下找是找不到的。
下面是几个可以准确定位对应红叉图标的有效XPath:
选项1:基于相邻单元格定位
//td[div[contains(text(),'UG_AUTOMATION')]]/following-sibling::td[@data-columnid='actioncolumn-1090']//i[@class='x-fa fa-icon-red fa-times-circle']
- 先定位到包含
UG_AUTOMATION文本的单元格(<td>) - 通过
following-sibling::td找到它右侧的操作列单元格(用data-columnid确保是正确的操作列) - 最后在这个操作列里定位到红叉图标
i
选项2:基于整行(tr)定位(更简洁)
//tr[td/div[contains(text(),'UG_AUTOMATION')]]//i[@class='x-fa fa-icon-red fa-times-circle']
- 先找到包含目标文本的整行(
<tr>) - 直接在这一行里查找删除图标
i,因为每一行只会有一个对应删除按钮,这样定位更高效
原XPath无效的原因
你的原路径//div[contains(text(),'UG_AUTOMATION')]*/i[@class='x-fa fa-icon-red fa-times-circle']试图从文本div的父节点或子节点中查找i,但实际上文本div在第一个<td>里,删除图标在第二个<td>里,两者属于同级单元格,没有直接的嵌套关系,所以原路径无法匹配到目标元素。
内容的提问来源于stack exchange,提问作者MOHAMMED IRFAN AHMED
相关产品推荐
相关产品推荐

