gpt4 book ai didi

javascript - 考虑到行跨度和列跨度,将表格单元格的索引附加到自身

转载 作者:行者123 更新时间:2023-11-30 12:56:33 24 4
gpt4 key购买 nike

我想将表格单元格的索引附加到该单元格的文本。我可以使用标准表格执行此操作,但我的代码在合并单元格时不起作用。

代码如下:

$("td").each( function() {
$(this).append($(this).index());
});

这是标准表的结果:

|---|---|---|---|
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| 0 | 1 | 2 | 3 |
|---|---|---|---|

下面是包含合并单元格的表格的结果:

|---|---|---|---|
| | 1 | 2 | 3 |
| 0 |---|---|---|
| | 0 | 1 | 2 |
|---|---|---|---|
| 0 | 1 | 2 |
|---|---|---|---|

对于包含合并单元格的表格,这是我想要实现的:

|---|---|---|---|
| | 1 | 2 | 3 |
| 0 |---|---|---|
| | 1 | 2 | 3 |
|---|---|---|---|
| 0 | 1 | 3 |
|---|---|---|---|

有什么想法吗?

这是一个 fiddle ... http://jsfiddle.net/many_tentacles/5PQcF/

最佳答案

一种方法是:

var $highest;
$("table.writeIndex tr").each(function(){
$highest=$('td',this).length;
})
$("table.writeIndex tr").each( function() {
var $td=$('td',this).length;
var count=$td;
$("td",this).each(function(){
var attr = $(this).attr('colspan');
if(typeof attr !== 'undefined' && attr !== false){
count=count+parseInt(attr)-1;
var previous=$(this).prev();
while(previous.length>0){
previous.html(previous.html()-1);
previous=previous.prev();
}
$(this).append($highest-count);
count=count-parseInt(attr);
}else{
$(this).append($highest-count);
count=count-1;
}
})
});

工作演示 Fiddle

关于javascript - 考虑到行跨度和列跨度,将表格单元格的索引附加到自身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18898991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com