Javascript 如何获取表行td';s具有行跨列的值

Javascript 如何获取表行td';s具有行跨列的值,javascript,jquery,html,Javascript,Jquery,Html,我有一个以rowspan作为起始列的表。表格的每行末尾都有一个按钮。单击按钮时,应检索相应的行值 JS-Bin 第1列 第2列 第3列 获取行值 1. 2. 3. 警报值 5. 6. 警报值 $('.get value')。在(“单击”,函数()上){ var col1val=$(this.parents('tr').find('.col1').text(); var col2val=$(this.parents('tr').find('.col2').text(); var col3val

我有一个以rowspan作为起始列的表。表格的每行末尾都有一个按钮。单击按钮时,应检索相应的行值


JS-Bin
第1列
第2列
第3列
获取行值
1.
2.
3.
警报值
5.
6.
警报值
$('.get value')。在(“单击”,函数()上){
var col1val=$(this.parents('tr').find('.col1').text();
var col2val=$(this.parents('tr').find('.col2').text();
var col3val=$(this.parents('tr').find('.col3').text();
警报(“Col1:+col1val+”Col2:+col2val+”Col3:+col3val”);
});

您可以将函数的第一行更改为

var col1val = $(this).parents('table').find('.col1').text();

JS-Bin
第1列
第2列
第3列
获取行值
1.
2.
3.
警报值
5.
6.
警报值
$('.get value')。在(“单击”,函数()上){
var col1val=$(this).parents('table').find('.col1').text();
var col2val=$(this.parents('tr').find('.col2').text();
var col3val=$(this.parents('tr').find('.col3').text();
警报(“Col1:+col1val+”Col2:+col2val+”Col3:+col3val”);
});

您可以将函数的第一行更改为

var col1val = $(this).parents('table').find('.col1').text();

JS-Bin
第1列
第2列
第3列
获取行值
1.
2.
3.
警报值
5.
6.
警报值
$('.get value')。在(“单击”,函数()上){
var col1val=$(this).parents('table').find('.col1').text();
var col2val=$(this.parents('tr').find('.col2').text();
var col3val=$(this.parents('tr').find('.col3').text();
警报(“Col1:+col1val+”Col2:+col2val+”Col3:+col3val”);
});

我会为每一行添加一个
第1行,第2行
e.t.c.类。然后使用
$('.row'+index+'.col1')
选择器很容易获得
行span
单元格的值。选中此项:

$('.get value')。在(“单击”,函数()上){
变量索引=$('.get value')。索引($(this))+1;//+1,因为索引是基于零的
var col1val=$('.row'+index+'.col1').text();
var col2val=$('.row'+index+'.col2').text();
var col3val=$('.row'+index+'.col3').text();
警报(“Col1:+col1val+”Col2:+col2val+”Col3:+col3val”);
});

第1列
第2列
第3列
获取行值
1.
2.
3.
警报值
5.
6.
警报值

我会为每一行添加一个
第1行,第2行
e.t.c.类。然后使用
$('.row'+index+'.col1')
选择器很容易获得
行span
单元格的值。选中此项:

$('.get value')。在(“单击”,函数()上){
变量索引=$('.get value')。索引($(this))+1;//+1,因为索引是基于零的
var col1val=$('.row'+index+'.col1').text();
var col2val=$('.row'+index+'.col2').text();
var col3val=$('.row'+index+'.col3').text();
警报(“Col1:+col1val+”Col2:+col2val+”Col3:+col3val”);
});

第1列
第2列
第3列
获取行值
1.
2.
3.
警报值
5.
6.
警报值

您希望得到什么样的结果,因为它似乎工作正常这是因为第二个按钮与第一个按钮没有相同的父行。一种更简单的方法是给大的
td
(第1列)分配一个ID,然后从两个按钮以这种方式将其作为目标。@Carsten&Craig它工作不好…@CarstenLøvboAndersen我也这么认为,但如果你查看第二个按钮生成的警报,它不会显示Col1的值。我明白了,很抱歉,我错过了
1
您期望的结果是什么,因为它似乎工作正常这是因为第二个按钮与第一个按钮没有相同的父行。一个更简单的方法是给大的
td
(Col1)分配一个ID,然后从两个按钮上以这种方式瞄准它。@Carsten&Craig它工作不好…@CarstenLøvboAndersen我也这么认为,但是如果你看第二个按钮生成的警报,它不会显示Col1的值。我明白了,很抱歉我错过了
1
,这只是我提到的一个例子,但在我的应用程序中,表很大,有很多行跨列,在这种情况下,上述解决方案不起作用,这只是我提到的一个例子,但在我的应用程序中,表很大,有很多行跨列,在这种情况下,上述解决方案不起作用