Как я могу получить значение тд, используя иерархию? - PullRequest
0 голосов
/ 01 августа 2009
<tr>
 <td>#</td>
 <td>2009</td>
 <td><a class="delete_this">Click</a></td>
</tr>

Я хочу использовать jquery и получить текст 2-й (второй) "td" при нажатии на якорь Я хочу, чтобы "тд" в том же tr, что и якорь ...

Как мне это сделать?

Пока у меня есть

$(document).ready(function(){
   $(".delete_this').click(function(){
   var myNUmber = $(this).parent()....///And this i should write the code to get the text for second td in tr where the anchor belongs to
 })
})

Ответы [ 4 ]

2 голосов
/ 01 августа 2009

Вот несколько способов:

$(this).parent().siblings("td:eq(1)").text()

Если вы ищете ячейку, прежде чем сможете сделать это следующим образом:

$(this).parent().prev().text()
1 голос
/ 01 августа 2009
var myNUmber = $(this).parent().siblings().get(1).text();

Подробности здесь

1 голос
/ 01 августа 2009

Лучше добавить только одно событие клика, используя .live вместо добавления нескольких обработчиков кликов, если у вас большая таблица, это повлияет на производительность (представьте 100 отдельных связанных событий).

Также не забудьте префиксировать селекторы классов с помощью nodeName, если можете (здесь вы уверены, что все delete_this являются якорями)

 $('a.delete_this').live('click', function(){
   var myNUmber = $(this).parent().siblings().get(1).text();
 });
1 голос
/ 01 августа 2009

$('.delete_this').closest('tr').children(':eq(1)') .text();

1) Получить тег .delete_this A
2) Получить родительский TR
3) Получить 2-й TD
4) Получить текст 2-го ТД

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...