Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery:合并表的列_Jquery_Html_Css_Merge_Html Table - Fatal编程技术网

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>