我需要获取所选td项的数据。在这种情况下,说我想要每行的第二个<td>
项的数据。我尝试了一个简单的Jquery来获取HTML,但它会获得相同的数据(即来自第一个<tr>
- >第二个<td>
的数据。我如何从第二行获取数据和连续的一行。
我希望在点击相应的链接时获取数据(td的文本)。
<table>
<tr>
<td>1</td>
<td class="name">First</td>
<td>something else</td>
<td><a class="link">Order</a></td>
</tr>
<tr>
<td>2</td>
<td class="name">second</td>
<td>something else</td>
<a class="link">Order</a>
</tr>
</table>
我使用的函数只是从第一个td获取该类的数据。我想我需要使用像parent()
这样的东西。但我对Jquery知之甚少。
var itemName = $('td.itemname').html();
或
var itemName = $('.itemname').html();
答案 0 :(得分:3)
var tdValues = [];
$(".name").each(function () {
tdValues.push($(this).text());
});
现在,变量td
中的每个tdValues
都有一个文本内容数组。
如果仅想要第二行:
var tdValue = $("tr:eq(1) .name").text();
如果您想要第二行并打开,
$("tr:gt(0) .name").each(...)
编辑:
$(".link").on('click', function () {
var text = $(this).closest('tr').find('.name').text();
});
答案 1 :(得分:2)
假设您在单击链接时希望此功能正常工作,那么:
$(function(){
$("a.link").click(function() {
var secondTd = $(this).parents("tr").find("td.name").first();
alert(secondTd.html());
});
});
答案 2 :(得分:1)
使用nth
功能,如下所示:
$('table tr td:nth-child(2)').text();
这将为您提供所有第二列的文本。 nth
函数不是从零开始的。