何时使用clone()

时间:2012-11-07 00:50:19

标签: jquery

我需要动态地向表中添加行。我知道我希望模型行看起来如下所示:

<tr id="row">
  <td><input type="text" name="name"/></td>
  <td><span>TEXT HERE</span></td>
  <td><input type="checkbox" name="asdf"/></td>
</tr>

我想知道我是否应该编写代码从头开始重现这一行,或者我是否应该使用jQuery的clone()方法,如下所示:

//Would document this better in production
$('#row').clone().attr('id', 'row2').insertAfter('#row');  

然后确保使用CSS隐藏原始#row元素。

概括这个问题,是否有一个隐藏的DOM元素,然后在需要jQuery的良好实践时克隆该元素?或者是否有针对此类问题的清洁解决方案?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果没有将格式硬编码到JavaScript中,这真的是最好的方法。

可以执行此操作的另一种方法是复制现有的行(数据)并从元素中删除所有文本。然后你得到一个没有不可见行的克隆。

还有一些插件可以处理此问题,例如dynoTableothers