我有这个html块:

<td><a href="#" class="">   <i class="far fa-times mr-1"></i>Cancel</a></td>

我写了下面的xpath来找到这个取消锚点,但这是不工作的.我做错了什么?

//a[contains(text(), 'Cancel')]

下面的xpath工作,但我需要了解上面的一个我做错了什么:

//i[@class='far fa-times mr-1']/..

推荐答案

//a[contains(text(), 'Cancel')]

Issue:上面的XSLT表达式不工作的原因是,上面的XSLT查找包含文本Cancel的锚(<a>)元素.然而,HTML代码段中的<a>元素并不直接包含文本Cancel.它包含一个元素<i>,然后是文本Cancel.

Solution:更改"表"表达式如下:

//a[contains(., 'Cancel')]

XPath explanation: .表示当前 node ,因此contains(., 'Cancel')判断<a>元素及其所有后代中是否存在"取消"文本.

Html相关问答推荐

卡片上方的文本

Font Awesome 6插入符号未显示

如何使用html和css将两个项目垂直对齐

带有多种 colored颜色 的HTML按钮

如何在元素的三条边中间换行边框?

创建带有弯曲边框的水平时间线

我怎样才能在我的网站上制作花哨的角落

如果浏览器通过http接收html,为什么客户端内置表单验证不起作用?

类型';联系人组件';上不存在属性';name FormControl';

我无法动态嵌入Instagram帖子,因为无法分配Instagram固定链接

高度:适合-内容不拉伸以适合内部长度

如何使用css在响应图像后面添加形状?

CSS 伪类 Select 器未按预期工作

Angular MatBadge 在高于 99 时不显示完整数字

为什么可滚动弹性项目需要 flex-basis: 0 ?

如何让一个 div 始终贴在容器的边缘?

在包含 html 标签的字符串的子字符串中应用不同的样式

在身体外部创建 tanget 45° div

删除按钮组件时 bootstrap col-auto 布局高度对齐中断

为什么 `html` 上的 overflow: hidden 将滚动框移动到正文?