在JQuery中克隆并为每个添加唯一ID

zik*_*zik 3 html javascript forms jquery

我正在创建一个简单的Web应用程序,用户进来; 从下拉框中选择并输入一些文本.完成后,用户按下"生成"按钮,将显示生成的连接字符串(如图所示<span>),然后用户可以复制和粘贴.我已经让它连续工作没问题了.

但我现在想要实现的是拥有一个"添加行"按钮,用户可以单击该按钮来复制上面的行.我遇到的问题是确保一旦复制了行并单击了生成按钮,复制的<span>将只填充与前一个相同的值<span>.

更新:所以我设法使用clone()JQuery中的函数来复制行并将其添加到下面.是否可以更改复制的每个元素的ID,包括表单的ID.即,当它被复制时,它被复制到的表格将被称为"Form1"

JS Fiddle我所拥有的是:

http://jsfiddle.net/XJEAn/

更新2:基本上我需要类似的东西但是,我试过的代码!

Pat*_*cia 6

我已经更新你的小提琴,给新表格独特的id

http://jsfiddle.net/zq3AN/

它可能不完美,但应该让你朝着正确的方向前进.

var uniqueId = 1;
$(function() {
     $('.addRow').click(function() {
         var copy = $("#original").clone(true);
         var formId = 'NewForm' + uniqueId;
         copy.attr('id', formId );


         $('#campaign').append(copy);
         $('#' + formId).find('input,select').each(function(){
            $(this).attr('id', $(this).attr('id') + uniqueId);

         });
         uniqueId++;  
     });
});
Run Code Online (Sandbox Code Playgroud)

基本上你复制表单,更改它的id,并将其附加到div.然后你查看所有输入并选择并将相同的uniqueId参数附加到它们的id.