Jquery克隆表单值并替换表单字段id

Jquery clone form values and replace form field id

本文关键字:表单 替换 字段 id Jquery      更新时间:2023-09-27

我正在尝试克隆一行以将值保留在文本框和注释字段中,并使用正则表达式将id从crs1部分替换为crs2。然而,我无法使这项工作发挥作用。

<div id="wrapper">
   <div id="info-crs1">Course Information

       <div id="course-crs1">
        <label for="txtcourse-crs1">Course 1</label><input type="text" id="txtcourse-crs1"/>
       </div> 
       <div id="grade-crs1">
         <label for="txtgrade-crs1">Grade 1</label><input type="text" id="txtgrade-crs1"/>
        </div>
        <div id="comments-crs1">Comments 1
           <textarea id="ta-comments-crs1"></textarea>
        <div>    
   </div>
</div>    
<input type="submit" value="clone">

这是我的代码:http://jsfiddle.net/nLk6wg0o/5/

如有任何帮助,将不胜感激

您的代码用替换的元素替换原始元素。要解决此问题,您可以将最后两行替换为:

$original.after(newhtml);

要克隆价值观,你首先必须用这样的东西来固定它们。此代码应在克隆之前运行:

// Fixate
$('#info-crs1 input').each(function(i, el) {
   $(el).attr('value', $(el).val()); 
});

请注意,这只适用于输入字段,而不适用于您的文本区域。要使文本区域工作,您需要在fixate循环中添加一些额外的代码。

http://jsfiddle.net/nLk6wg0o/6/