Подтвердить что ты не робот

Селектор jQuery сначала td каждой строки

У меня есть этот материал:

<table>
  <tr>
    <td>nonono</td> <!-- FIND THIS -->
    </td>foobar</td>
  </tr>
  <tr>
    <td>nonono2</td> <!-- FIND THIS -->
    </td>foobar2</td>
  </tr>
  <tr>
    <td>nonono3</td> <!-- FIND THIS -->
    </td>foobar2</td>
  </tr>
</table>

Я пробовал с $('td:first') без везения;

Ожидаемый возврат: <td>nonono</td>, <td>nonon2</td> и <td>nonon3</td>

Спасибо заранее!

4b9b3361

Ответ 1

Вы должны использовать :first-child вместо :first:

Похоже, вы хотите итерации через них. Вы можете сделать это, используя .each().

Пример:

$('td:first-child').each(function() {
    console.log($(this).text());
});

Результат:

nonono
nonono2
nonono3

Если вы не хотите повторять итерацию:

$('td:first-child').css('background', '#000');

демонстрация JSFiddle.

Ответ 3

Использование:

$("tr").find("td:first");

js fiddle - в этом примере .text() в конце, чтобы показать, что он возвращает элементы.

В качестве альтернативы вы можете использовать:

$("td:first-child");

.find() - Документация API jQuery

Ответ 4

попробовать

var children = null;
$('tr').each(function(){
    var td = $(this).children('td:first');
    if(children == null)
        children = td;
    else
        children.add(td);
});

// children should now hold all the first td elements

Ответ 5

$('td:first-child') вернет коллекцию требуемых элементов.

var text = $('td:first-child').map(function() {
  return $(this).html();
}).get();

Ответ 6

var tablefirstcolumn=$("tr").find("td:first")
alert(tablefirstcolumn+"of Each row")