2016-08-07 50 views
2

我試圖從這個標記採取內部文本內的文字:從選擇

<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。任何建議我做錯了什麼?

回答

1

你需要做到以下幾點:

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作爲查詢就足夠了。

2

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>