如何使用jQuery复制和清除表单元素?

如果我在表单中有以下html:

<div class='example'>
   <div class='row'>
       <input name='first_field' type='text' value='Hello' />
       <input name='second_field' type='text' value='World!' />
   </div>
</div>

如何创建此(第一个)’行’的副本,并将值删除,以便在此后根据需要附加多个用户条目.值已经存在的原因(如本示例中所示)是针对正在编辑数据的情况.我想获得:

   <div class='row'>
       <input name='first_field' type='text' value='' />
       <input name='second_field' type='text' value='' />
   </div>

我曾想过:

var row = $('.example').find('.row:first-child').clone(); 
row.find('[name]').each(function() {
  $(this).val('');
});

但这不起作用,因为它似乎没有删除值,也没有捕获外部html(包装器).

任何人都可以建议吗?

谢谢.

最佳答案 您的js中存在语法错误. .find(‘.row:first-child)应该是.find(‘.row:first-child’),但是对于克隆,默认行为是去除值.刮擦……那只是为了显然克隆实际的输入元素.

http://jsfiddle.net/Yb2Ym/

var row = $('.example').find('.row:first-child').clone();  
row.find('[name]').each(function() {
  $(this).val('');
});
$(".row:last").after(row)
点赞