简体   繁体   English

如何<span>在使用 JavaScript 的链接的 HTMLCollection 内的文本中<a>使用 select 文本?</a></span>

[英]How do I select text inside a <span> that is inside an HTMLCollection of links <a> using JavaScript?

I'm trying to scrape some data for a fun personal project, and I'm new to JS.我正在尝试为一个有趣的个人项目抓取一些数据,而且我是 JS 新手。 I'm trying to get an array of team names from an HTMLCollection (using Chrome Dev Tools).我正在尝试从 HTMLCollection 中获取一组团队名称(使用 Chrome 开发工具)。 If there's an easier way I'm open to it.如果有更简单的方法,我愿意接受。 So far:至今:

let vMidCollection = document.getElementsByClassName("v-mid");
vMidCollection[0]

在此处输入图像描述

QUESTION: Each <a></a> contains a <span></span> but I need an array of team names (underlined).问题:每个<a></a>包含一个<span></span>但我需要一组团队名称(下划线)。 Thanks in advance.提前致谢。

You can try this using querySelectorAll您可以使用querySelectorAll尝试此操作

 const teamNames = [...document.querySelectorAll('.v-mid span.teamName')].map(e => e.textContent) console.log(teamNames)
 <a class="v-mid"> <div> <span class="teamName">Test </span> </div> </a> <a class="v-mid"> <div> <span class="teamName">Test 1</span> </div> </a> <a class="v-mid"> <div> <span class="teamName">Test 2</span> </div> </a>

You can use the following您可以使用以下

 let vMidCollection = document.getElementsByClassName("v-mid"); team_names = [] Array.from(vMidCollection).forEach( (elem) => {team_names.push(elem.querySelector(".teamName").innerText)}) console.log(team_names)
 <a class="v-mid"> <div> Stuff </div> <span class="teamName">Tam 1 </span> </a> <a class="v-mid"> <div> Stuff </div> <span class="teamName">Team 2</span> </a> <a class="v-mid"> <div> Stuff </div> <span class="teamName">Team3</span> </a>

It finds every element inside vMidCollection that has class="teamname" and appends it text to team_names它找到vMidCollection中具有class="teamname"的每个元素,并将其文本附加到team_names

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM