jQuery Clone在同一页面上以两种形式输入?

时间:2012-01-20 05:10:17

标签: javascript jquery clone

我一直试图让同一页面上的两个表单起作用,我遇到的唯一问题是没有让克隆输入起作用,它们似乎因为div元素而相互冲突。

我一直在使用本教程作为指南: http://www.9lessons.info/2009/06/submit-multiple-forms-jquery-ajax.html

以下是使用一种表单的代码: http://jsfiddle.net/yBdTA/

这就是我想要实现的目标: http://jsfiddle.net/c4Uce/

注意当您点击第二个“添加更多”链接时,第一个输入克隆而不是第二个输入克隆。

我知道我可以复制克隆的jQuery函数以匹配第二种形式:

   $(function(){
        var removeLink = ' <a class="remove" href="#" onclick="jQuery(this).parent().slideUp(function(){ jQuery(this).remove() }); return false">remove</a>';
        jQuery('a.add').relCopy({ append: removeLink});    
    });

但我希望这是,我怎么称呼它,动态?像9lessons指南一样,我可以使用PHP为克隆元素创建唯一标识符,并希望jQuery与ID匹配,

希望我明白这一点。

帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

你可以尝试,它可以多种形式

http://jsfiddle.net/yBdTA/2/

(function($) {

    function remove(){
    $('.clone').each(function(i){
           var input= $(this);
            input.find('a.remove').click(function(){
              input.remove();
           });
         });
    }

    $('form').each(function(i){
          var form = $(this);
          var removeLink = '<a class="remove" href="#">remove</a>';
          var iputclone = form.find('p.clone').append(removeLink);

          form.find('a.add').click(function(){
              iputclone.clone().insertBefore(this);
              remove();
          });
        });


})(jQuery);

更新:

iputclone.clone().insertBefore(this).find('.input').attr('value','');

//So easy, U can think a object when we start will is ifself, use it next, and next