Получил значение из нескольких классов - PullRequest
1 голос
/ 16 апреля 2020

Я вижу, что у кого-то была такая же проблема со мной, но я не знаю, что не так, когда я пытаюсь это реализовать.

Так что, когда вы нажимаете кнопку show , она должна возвращать определенную c значение из каждого столбца

Код:

// find elements
$(".btn").click(function(){
	var line = $('.trData').siblings('tdData').val();
	alert(line);
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<tbody>
<tr class = "trData">
  <td><input class="tdData" type=text value = 1>
    <button class="btn">Show</button>
  </td>
  <td><input class="tdData" type=text value = 2>
    <button class="btn">Show</button>
  </td>
</tr>
</tbody>

1 Ответ

1 голос
/ 16 апреля 2020

В вашем текущем коде есть несколько проблем.

  • .trData не имеет братьев и сестер. Вам нужно получить элемент брата .tdData из button, по которому щелкнули. Это можно сделать с помощью ключевого слова this в функции обработчика для ссылки на элемент, вызвавший событие.
  • В селекторе tdData отсутствует префикс .
  • . HTML отсутствует элемент <table>, хотя я предполагаю, что это просто типографская ошибка в вопросе

С учетом сказанного попробуйте следующее:

$(".btn").click(function() {
  var line = $(this).siblings('.tdData').val();
  console.log(line);
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
  <tbody>
    <tr class="trData" border="1">
      <td>
        <input class="tdData" type="text" value="1">
        <button class="btn">Show</button>
      </td>
      <td>
        <input class="tdData" type="text" value="2">
        <button class="btn">Show</button>
      </td>
    </tr>
  </tbody>
</table>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...