You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery遍历表格行的for each中添加嵌套循环后后续列丢失如何解决

问题根源

你代码的问题出在对$.each返回值的认知错误:

  • jQuery的$.each方法执行后返回的是被遍历的原始数组/对象,不会返回你循环内部产生的字符串内容
  • 你直接把$.each写在字符串拼接的+运算符中间,相当于把数组对象强制转为字符串插入到HTML结构中,会直接打断后续的字符串拼接逻辑,甚至产生语法错误,导致<td>之后的列内容完全没有被拼接到tbody变量里,自然就不会渲染出来。

修复方案

你需要先单独声明变量存储第二层循环生成的HTML内容,再把这个变量拼到对应的<td>位置:

var tbody="";
const arr = ['one','two','three','four','five'];
$.each(response.all_groups, function (key, group) {
    // 先定义变量存储第二层循环的内容
    let innerTdContent = '';
    $.each(arr, function(index, value) { 
        // 把你需要展示的内容拼到这个变量里,此处示例为每个值换行展示
        innerTdContent += value + '<br>';
        console.log(value); 
    }); 

    tbody+='<tr>'+ 
                '<td><p class="font-weight-bold mb-0">'+group.group_id+'</p>'+group.group_description+'</td>'+ 
                '<td>'+group.group_type_name+'</td>'+ 
                // 把提前拼好的内容插入到td中
                '<td>'+ innerTdContent +'</td>'+ 
                '<td>'+getgroupstatus(group.effective_start_datetime, group.effective_end_datetime)+'</td>'+ 
                '<td>'+ 
                    '<button type="button" value="'+group.id+'" class="edit_group btn btn-outline-secondary"><i class="fas fa-edit"></i> Edit</button> '+ 
                    '<button type="button" value="'+group.group_id+'" title="delete '+ group.group_name +'" class="delete_group btn btn-outline-secondary"><i class="fas fa-trash"></i> Delete</button>'+ 
                '</td>'+ 
            '</tr>';
});

内容的提问来源于stack exchange,提问作者user16409170

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 02:45:02