选择器中的内部文本

Inner text from selector

本文关键字:文本 内部 选择器      更新时间:2023-09-26

我试图从这个标记中获取内部文本:

<span ng-if="vm.totalRecords > 1" class="ng-binding ng-scope">
    Displaying results 1-25 of 17,430
</span>

使用此选择器:

document.querySelectorAll('div.Dashboard-section div.pure-u-1-1 span.ng-binding.ng-scope').innerText

返回undefined。有什么建议吗?我做错了什么?

document.getElementsByTagName可用于获取span元素,然后选择其中的第一个。

console.log(document.getElementsByTagName('span')[0].innerText);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<span ng-if="vm.totalRecords > 1" class="ng-binding ng-scope">Displaying results 1-25 of 17,430</span>

您需要执行以下操作:

console.log(document.querySelectorAll('span')[0].innerText);
<span ng-if="vm.totalRecords > 1" class="ng-binding ng-scope">Displaying results 1-25 of 17,430</span>

这将记录innerText,而不是其他代码,原因有两个:

  1. 使用querySelectorAll返回一个结果列表,因此我们使用[0]来引用第一个找到的元素。

  2. 来自querySelectorAll的实际查询找不到HTML元素。简单地使用span作为查询就足够了。