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

192
Visualizações
.prev() and .prevAll() requests only return one previous element

So in this case I am trying to get the id of the element with id="current1".

$(document).ready(function() {

  $(".testbutton").on('click', function() {
    var num2 = $(this).prev().val();
    var ID2 = $(this).prev().attr("id");
    var ID1 = $(this).prevAll().attr("id");
    document.write(num2);
    document.write("ID2=" + ID2);
    document.write("ID1=" + ID1);
  });
});
.testbutton {
  background-color: #ff7b00;
  color: white;
  border-radius: .2em;
  padding: .1em .2em;
  margin-top: 2em;
  border: none;
  cursor: pointer;
  width: 5em;
  font-size: .9em;
}

.testbutton:hover {
  background-color: #924701;
}

.numberinput {
  width: 3em;
  text-align: center;
}


/* Chrome, Safari, Edge, Opera */

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}


/* Firefox */

input[type=number] {
  -moz-appearance: textfield;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<tr id="row1">
  <td class="faction">Testrow</td>
  <td><a class="currentamount" id="current1" value="0">0</a></td>
  <td><input type="number" id="num1" class="numberinput" placeholder="0"></input><a type="button" class="testbutton" id="add1">get previous</a></td>
  <td></td>
</tr>

about 4 years ago · Santiago Gelvez
1 Respostas
Responde à pergunta

0

.prev() and .prevAll() only return siblings, but #current1 is not a sibling of .testbutton, since they're in different <td>.

You need to go up a level and get the sibling of the parent.

$(document).ready(function() {

  $(".testbutton").on('click', function() {
    var num2 = $(this).closest("td").prev().find(".currentamount").attr("id");
    console.log(num2);
  });
});
.testbutton {
  background-color: #ff7b00;
  color: white;
  border-radius: .2em;
  padding: .1em .2em;
  margin-top: 2em;
  border: none;
  cursor: pointer;
  width: 5em;
  font-size: .9em;
}

.testbutton:hover {
  background-color: #924701;
}

.numberinput {
  width: 3em;
  text-align: center;
}


/* Chrome, Safari, Edge, Opera */

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}


/* Firefox */

input[type=number] {
  -moz-appearance: textfield;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
  <tr id="row1">
    <td class="faction">Testrow</td>
    <td><a class="currentamount" id="current1" value="0">0</a></td>
    <td><input type="number" id="num1" class="numberinput" placeholder="0"><a type="button" class="testbutton" id="add1">get previous</a></td>
    <td></td>
  </tr>
</table>

about 4 years ago · Santiago Gelvez 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