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

113
Visualizações
¿Cómo indexar divs con la misma clase y buscar dentro de ellos?

Necesito crear una barra de búsqueda para una línea de tiempo extraña (sistema javaEE heredado). Está en javascript, tengo una barra de búsqueda de entrada y ejecuta la función cuando se presiona enter (e.keycode == 13).

Todos los divs que deberían estar en la búsqueda son de la misma clase en la línea de tiempo, sin embargo, la posición de inicio (índice) de la línea de tiempo es una clase diferente de las demás, solo debo considerar a partir de esta división en adelante. Necesito saber cómo puedo indexar todos esos divs (element.querySelectorAll()?) y cómo puedo ignorar los que se colocan antes del índice (el div con la clase diferente)

Es más fácil de entender con esta impresión. Hice una imagen con el código porque no puedo extraerlo y copiarlo debido a la estructura del servidor javaEE, también se explica en la imagen.

https://i.ibb.co/prXBNNY/Sem-t-tulo.png

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

0

Use el combinador general de hermanos :

 var divs = document.querySelectorAll('div.marker.active ~ div.marker');

Esto seleccionará todos los elementos div.marker ( <div class="marker"> ) que siguen a un elemento div.marker.active ( <div class="marker active"> )

about 4 years ago · Juan Pablo Isaza Relatório

0

Si desea usar los nodos en la lista filtrada para algo, podría hacer algo como esto, por ejemplo:

 const nodeList = Array.from(document.querySelectorAll('div.marker')) const findIndex = (arr) => { for (let i = 0; i < arr.length; i++) { if (arr[i].className === 'marker active') { return i } } } const startIndex = findIndex(nodeList) const searchIndex = (list, index) => { let searchArray = [] for (let i = index; i < list.length; i++) { searchArray.push({searchContent: nodeList[i].innerText}) } return searchArray } console.log(searchIndex(nodeList, startIndex))
 <div class="marker">content div 1</div> <div class="marker">content div 2</div> <div class="marker">content div 3</div> <div class="marker">content div 4</div> <div class="marker">content div 5</div> <div class="marker">content div 6</div> <div class="marker active">div 7 --- search starts here</div> <div class="marker">content div 8</div> <div class="marker">content div 9</div> <div class="marker">content div 10</div> <div class="marker">content div 11</div> <div class="marker">content div 12</div> <div class="marker">content div 13</div>

Producción:

 [ { "searchContent": "content div 13" }, { "searchContent": "content div 12" }, { "searchContent": "content div 11" }, { "searchContent": "content div 10" }, { "searchContent": "content div 9" }, { "searchContent": "content div 8" }, { "searchContent": "div 7 --- search starts here" } ]
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