jQuery:合并表的列
我想合并表格最后一列的单元格,两个相邻的单元格具有相同的文本: 我有此代码,但它会检查相邻行的单元格:jQuery:合并表的列,jquery,html,css,merge,html-table,Jquery,Html,Css,Merge,Html Table,我想合并表格最后一列的单元格,两个相邻的单元格具有相同的文本: 我有此代码,但它会检查相邻行的单元格: <script language="javascript" type="text/javascript"> $(document).ready(function () { $('#sample_1 tbody tr:nth-child(4) td:nth-child(4)').each(function(){ alert( $(t
<script language="javascript" type="text/javascript">
$(document).ready(function () {
$('#sample_1 tbody tr:nth-child(4) td:nth-child(4)').each(function(){
alert( $(this).text());
var colSpan=1;
while( $(this).text() == $(this).next().text() ){
$(this).next().remove();
colSpan++;
}
$(this).attr('colSpan',colSpan);
});
});
</script>
$(文档).ready(函数(){
$(“#示例_1 t正文tr:n个子体(4)td:n个子体(4)”。每个(函数(){
警报($(this.text());
var colSpan=1;
while($(this).text()==$(this).next().text()){
$(this.next().remove();
colSpan++;
}
$(this.attr('colSpan',colSpan);
});
});
这是表格HTML的源代码:
<table class="table table-striped table-bordered dataTable TF" id="sample_1" aria-describedby="sample_1_info">
<tbody role="alert" aria-live="polite" aria-relevant="all">
<tr class="fltrow">
<td colspan="4">
<input id="flt0_sample_1" type="text" ct="0" class="single_flt">
</td>
</tr>
<tr class="gradeX odd">
</tr>
<tr role="row">
<th class="sorting" role="columnheader" tabindex="0" aria-controls="sample_1" rowspan="1" colspan="1" aria-label="Username: activate to sort column ascending" style="width: 231px;">Nom</th>
<th class="sorting" role="columnheader" tabindex="0" aria-controls="sample_1" rowspan="1" colspan="1" aria-label="Username: activate to sort column ascending" style="width: 231px;">Prénom</th>
<th class="sorting" role="columnheader" tabindex="0" aria-controls="sample_1" rowspan="1" colspan="1" aria-label="Username: activate to sort column ascending" style="width: 231px;">Numéro Teléphone</th>
<th class="sorting" role="columnheader" tabindex="0" aria-controls="sample_1" rowspan="1" colspan="1" aria-label="Username: activate to sort column ascending" style="width: 231px;">heure de rdv</th>
</tr>
<tr role="row">
<td class="hidden-phone ">
MOSTEFAOui
</td>
<td class="hidden-phone ">
MAiNE
</td>
<td class="hidden-phone ">
0555122844
</td>
<td class="hidden-phone " colspan="1">
09:00
</td>
</tr>
<tr role="row">
<td class="hidden-phone ">
ADJOUT
</td>
<td class="hidden-phone ">
ABDELKADER
</td>
<td class="hidden-phone ">
0775522355
</td>
<td class="hidden-phone ">
10:00
</td>
</tr>
<tr role="row">
<td class="hidden-phone ">
SANAD
</td>
<td class="hidden-phone ">
MILOUD
</td>
<td class="hidden-phone ">
0661225412
</td>
<td class="hidden-phone ">
10:00
</td>
</tr>
<tr role="row">
<td class="hidden-phone ">
ACHAOUR
</td>
<td class="hidden-phone ">
MOHAMED
</td>
<td class="hidden-phone ">
0555122265
</td>
<td class="hidden-phone ">
10:00
</td>
</tr>
<tr role="row">
<td class="hidden-phone ">
TARFAUI
</td>
<td class="hidden-phone ">
MORAD
</td>
<td class="hidden-phone ">
0788745211
</td>
<td class="hidden-phone ">
10:00
</td>
</tr>
<tr role="row">
<td class="hidden-phone ">
TANEM
</td>
<td class="hidden-phone ">
LAKHDAR
</td>
<td class="hidden-phone ">
0666115487
</td>
<td class="hidden-phone ">
11:00
</td>
</tr>
</tbody>
</table>
笔名
名词
电话号码
赫雷德尔德夫酒店
莫斯特法乌伊
缅因州
0555122844
09:00
调整
阿卜杜勒卡德
0775522355
10:00
萨纳德
米卢德
0661225412
10:00
阿乔尔
穆罕默德
0555122265
10:00
塔法伊
莫拉德
0788745211
10:00
塔尼姆
拉赫达尔
0666115487
11:00
虽然不是最优雅的解决方案,但它确实有效
我在你的第四专栏中添加了一个名为“heure”的类
11:00
以及对JS的以下更改
<script language="javascript" type="text/javascript">
$(document).ready(function () {
var topMatchTd;
var previousValue = "";
var rowSpan = 1;
$('.heure').each(function(){
if($(this).text() == previousValue)
{
rowSpan++;
$(topMatchTd).attr('rowspan',rowSpan);
$(this).remove();
}
else
{
topMatchTd = $(this);
rowSpan = 1;
}
previousValue = $(this).text();
});
});
</script>
$(文档).ready(函数(){
var-topMatchTd;
var previousValue=“”;
var-rowSpan=1;
$('.heure')。每个(函数(){
if($(this).text()==上一个值)
{
rowSpan++;
$(topMatchTd).attr('rowspan',rowspan);
$(this.remove();
}
其他的
{
topMatchTd=$(此项);
rowSpan=1;
}
previousValue=$(this.text();
});
});
同时发布您表格的html可能会吸引我们帮助您。无论如何,如果要在多行上跨越一个单元格,应该使用rowspan而不是colspan。现在我想在$this.text和$this.next().text()上使用alert时立即遍历列。它显示例如Mostefaoui,然后缅因州和我想显示Mostefaoui和邻接下一行可能我理解错误,但是为什么你有第四个孩子?我看您需要这样的选择器$(“#示例_1t正文tr td:nth child(4)”
<script language="javascript" type="text/javascript">
$(document).ready(function () {
var topMatchTd;
var previousValue = "";
var rowSpan = 1;
$('.heure').each(function(){
if($(this).text() == previousValue)
{
rowSpan++;
$(topMatchTd).attr('rowspan',rowSpan);
$(this).remove();
}
else
{
topMatchTd = $(this);
rowSpan = 1;
}
previousValue = $(this).text();
});
});
</script>