Jquery 克隆表单值并替换表单字段 ID
Jquery clone form values and replace form field id
我正在尝试克隆一行以保留我的文本框和评论字段中的值,并使用正则表达式将 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 循环中添加一些额外的代码。
我正在尝试克隆一行以保留我的文本框和评论字段中的值,并使用正则表达式将 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 循环中添加一些额外的代码。