我有这个东西:
<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>
提前致谢!
答案 0 :(得分:44)
您应该使用:first-child
代替:first
:
听起来你想要迭代它们。您可以使用.each()
。
示例:
$('td:first-child').each(function() {
console.log($(this).text());
});
结果:
nonono
nonono2
nonono3
如果你不想迭代,那么就会发生这种情况:
$('td:first-child').css('background', '#000');
答案 1 :(得分:11)
尝试这个选择器 -
$("tr").find("td:first")
演示-->
http://jsfiddle.net/66HbV/
或者
$("tr td:first-child")
演示-->
http://jsfiddle.net/66HbV/1/
</td>foobar</td>
应为<td>foobar</td>
答案 2 :(得分:2)
使用:
$("tr").find("td:first");
js fiddle - 此示例末尾有.text()
,表示它正在返回元素。
或者,您可以使用:
$("td:first-child");
.find()
- jQuery API文档
答案 3 :(得分:2)
var tablefirstcolumn=$("tr").find("td:first")
alert(tablefirstcolumn+"of Each row")
答案 4 :(得分:2)
您可以这样做
$(function(){
$("tr").find("td:eq(0)").css("color","red");
})
<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>
答案 5 :(得分:1)
试
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
答案 6 :(得分:1)
$('td:first-child')
将返回您想要的元素集合。
var text = $('td:first-child').map(function() {
return $(this).html();
}).get();