jQuery - найти значение относительно элемента, по которому щелкнули - PullRequest
1 голос
/ 10 февраля 2010

Я пытаюсь получить текстовое значение ячейки таблицы относительно нажатой ссылки. Нажмите на ссылку в любой из ячеек класса «три» и получите текст ячейки этой конкретной строки с именем «один».

<tr>
<td class='one'><a href="#">Text to get</a></td>
<td class='two'>meh</td>
<td class='three'><a href="#">Click this to get the text in the first cell of this row</a></td>
</tr>
<tr>
<td class='one'>Different text to get</td>
<td class='two'>blah</td>
<td class='three'><a href="#">Click this to get the text in the first cell of this row</a></td>
</tr>

Я могу получить текст элемента, по которому щелкнули, что-то вроде:

console.log($(this).text());

Но как мне получить текст этой первой ячейки в строке?

Я подумал, что, например, это будет что-то вроде:

console.log($(this).prev().prev().text());

Но это не правильно (возвращает «пустую строку»). Есть предложения?

Ответы [ 3 ]

3 голосов
/ 10 февраля 2010

Попробуйте:

$(this).closest('td').siblings('.one').text();

1 голос
/ 10 февраля 2010

будет ли это работать?

http://jsbin.com/opafa

$('td.three a').click(function(e) {
    e.preventDefault();

    var txt = $(this).prevAll('.one').text();

    alert(txt);
});
1 голос
/ 10 февраля 2010
$("td.three a").click(function(e){
  e.preventDefault();
  var myText = $(this).closest("tr").find("td.one").text();
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...