jQuery选择器每行的第一个td

Rag*_*azs 20 jquery jquery-selectors

我有这个东西:

<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>
Run Code Online (Sandbox Code Playgroud)

我试过$('td:first')没有运气;

预期收益:<td>nonono</td>,<td>nonon2</td><td>nonon3</td>

提前致谢!

Jam*_*lly 45

您应该使用:first-child而不是:first:

听起来你想要迭代它们.你可以使用.each().

例:

$('td:first-child').each(function() {
    console.log($(this).text());
});
Run Code Online (Sandbox Code Playgroud)

结果:

nonono
nonono2
nonono3
Run Code Online (Sandbox Code Playgroud)

如果你不想迭代,那就太过分了:

$('td:first-child').css('background', '#000');
Run Code Online (Sandbox Code Playgroud)

JSFiddle演示.


Moh*_*dil 11

试试这个选择器 -

$("tr").find("td:first")
Run Code Online (Sandbox Code Playgroud)

演示--> http://jsfiddle.net/66HbV/

要么

$("tr td:first-child")
Run Code Online (Sandbox Code Playgroud)

演示--> http://jsfiddle.net/66HbV/1/

</td>foobar</td> 应该 <td>foobar</td>


Kal*_*and 6

你可以这样做

$(function(){
  $("tr").find("td:eq(0)").css("color","red");
})
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
  <tr>
    <td>col_1</td>
    <td>col_2</td>
  </tr>
  <tr>
    <td>col_1</td>
    <td>col_2</td>
  </tr>
  <tr>
    <td>col_1</td>
    <td>col_2</td>
  </tr>
  <tr>
    <td>col_1</td>
    <td>col_2</td>
  </tr>
</table>
Run Code Online (Sandbox Code Playgroud)