Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

245
Visualizações
Cómo encontrar DIV dentro de la estructura div por InnerText o Class

Tengo un div con varios hijos que tienen una gran estructura div en ellos. Ahora quiero encontrar un elemento con un texto interno específico. ¿Cómo puedo hacer esto? Escuché algo de document.evaluate, pero ¿es esto lo correcto?

 <div className="main"> <div className="child1"> <div> <div><label className="text1">First Label</label></div> </div> </div> <div className="child2"> <div> <div><label className="text2">Second Label</label></div> </div> </div> <div className="child3"> <div> <div><label className="text3">Third Label</label></div> </div> </div> </div>

Tengo principal y quiero encontrar la etiqueta con el texto Segunda etiqueta sin múltiples bucles.

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Usando una expresión XPath en Javascript, puede consultar el elemento específico y usar text() para consultar el texto dentro del elemento.

 const getnodes = function(expr, parent) { let results = []; let contextNode = parent || document; let query = document.evaluate(expr, contextNode, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); for (let i = 0, length = query.snapshotLength; i < length; ++i) { results.push(query.snapshotItem(i)); } return results; }; let col = getnodes('//div[@class="main"]//label/text()[ contains(.,"Second Label") ]'); col.forEach(n => { console.log(n.textContent) }); let ref=document.querySelector('div.main > div.child3'); col=getnodes('div/div/label',ref); col.forEach(n => { console.log('Using explicit reference node:',n.textContent) });
 <div class="main"> <div class="child1"> <div> <div><label class="text1">First Label</label></div> </div> </div> <div class="child2"> <div> <div><label class="text2">Second Label</label></div> </div> </div> <div class="child3"> <div> <div><label class="text3">Third Label</label></div> </div> </div> </div>

about 4 years ago · Juan Pablo Isaza Relatório

0

Hola, puedes usar la búsqueda de ruta. Para obtener más información sobre este documento de verificación evaluar

 var xPath = "//label[contains(text(),'First Label')]"; console.log(document.evaluate(xPath, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue);
about 4 years ago · Juan Pablo Isaza Relatório

0

Puede hacerlo a través de document.querySelectorAll ("label")

 const len = document.querySelectorAll("label"); for (let i = 1; i < len.length+1; i++) { var el = document.querySelector("label[classname=text"+i+"]"); console.log(el.innerText); if(el.innerText == "First Label") { console.log("Found!"); } }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda