我有以下HTML表格
<table>
<tr class="trSelected">
<td>One</td>
<td>two</td>
</tr>
</table>
我只想获得text
中的second column
(即'two
')
我试过
$('.trSelected td').eq(2).val()
但是它会回复一个空字符串 如何通过jQuery实现?
答案 0 :(得分:8)
您应该使用以下结构:
$('.trSelected td').eq(1).text()
或
$('.trSelected td:eq(1)').text()
eq
选择器使用从零开始的索引。此外,您必须使用text
方法,而不是val
。
答案 1 :(得分:4)
列表索引从0开始,而不是从1开始。
您正在尝试选择不存在的第3列。此外,.val()方法仅用于获取和设置表单字段,而不是普通的html元素。请改用.text()!
$('.trSelected td').eq(1).text()
可能有用。
答案 2 :(得分:2)
使用nth-child选择器获取第二个单元格
$(".trSelected td:nth-child(2)").val()
答案 3 :(得分:2)
首先,eq()
的参数是一个基于0的索引,因此要获得第二个元素,您需要调用eq(1)
。
其次,val()
方法用于从输入中检索值,您处理td
元素,而不是输入。
$('.trSelected td').eq(1).text()
答案 4 :(得分:0)
您可以使用第n个子选择器,或者您应该使用eq(1)。此外,您应该使用.text()或.html()而不是.val()
jsFiddle中的一个例子:http://jsfiddle.net/heTyW/