1

我基本上有一个包含 5 个不同列和 10 行的表。当有人点击 a 时,我希望发生以下情况row

  • 获取行的第一列的文本值
  • alert 我们之前得到的值

我已经尝试过,但它获取了实际列的数据,这对我不利。

$('.table tbody tr').click( function (e) {
    alert ($(e.target).text());
} );

任何帮助,将不胜感激。

4

5 回答 5

2

试试这个:

$('.table tbody tr').click( function () {
    alert ($(this).find('td:first').text());
} );
于 2013-11-01T13:20:03.913 回答
2

试试这个:

var previousValue = ''
$('.table tbody tr').click( function (e) {
    alert(previousValue);
    previousValue = $(this).find('td:first').text());
});    

我怎样才能获得第二个值

您可以使用eq()从零开始的 来获取集合中的特定项目:

var previousValue = ''
$('.table tbody tr').click( function (e) {
    alert(previousValue);
    previousValue = $(this).find('td').eq(1).text()); // second item
});    
于 2013-11-01T13:20:26.373 回答
1

这应该有效:

$('tr').each(function() {
    $(this).click(function() {
        var selectedTd = $(this).children('td:first-child').text();
        alert(selectedTd);
    });
});

您也可以替换td:first-child:nth-child(1)然后增加数字,例如:nth-child(2),以定位您可能需要的其他子元素。

这里的例子:http: //jsfiddle.net/RxgwH/1/

于 2013-11-01T13:27:09.447 回答
0
$('.table tr td').click( function () {
    alert ($(this).text());
} );
于 2013-11-01T13:30:56.603 回答
0

这应该给你你需要的东西:

$('.table tbody tr').click( function () {
    alert($(this).children('td:first').text());
});
于 2013-11-01T13:45:50.783 回答