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

使用jQuery克隆tr对象追加到tbody时功能异常问题求助

问题原因
  • 你通过template.find("table tbody tr")获取到的<tr>元素,是嵌套在你克隆出的离线DOM片段里的<table>结构下的,直接将属于其他<table>上下文的<tr>插入目标<tbody>时,jQuery/浏览器的DOM操作逻辑会出现异常,导致插入失败,这就是第一段代码没有效果的原因。
  • 第二段代码直接插入<tr>的子元素(也就是<td>节点),自然会丢失外层的<tr>标签,和你观察到的现象一致。
解决方法

两种方案都可以修复问题:

方案1:直接克隆目标<tr>(更简洁,推荐)

不需要克隆整个模板容器,直接定位到你需要的<tr>节点克隆后插入即可:

// 如需保留tr绑定的事件,可改为.clone(true)
$("#secret_tr table tbody tr").clone().appendTo("table.table tbody");

方案2:调整原有写法,先将<tr>从模板DOM中脱离

如果要沿用你原有的代码逻辑,只需要在拿到<tr>后调用detach()方法将其从模板的DOM结构中独立出来再插入即可:

var template  = $("#secret_tr").children().clone();
var tr        = template.find("table tbody tr").detach();
$("table.table tbody").append(tr);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 03:54:01