2011-08-01 45 views
1

我有一个表单,可以通过add链接添加新的输入字段。每个新添加的输入字段也可以通过链接remove删除。动态表单 - DOM操作

我该怎么做才能使add and remove链接仅显示最后添加的输入字段?

例子:jsfiddle - my code

$(function() { 
    $('a.add_input').live('click', function(event) { 
     event.preventDefault(); 
     var $class = '.' + $(this).closest('div.find_input').find('div').attr('class'); 
     var newDiv = $($class).find('div:first').clone(); 
     //alert(newDiv)     
     newDiv.append('<a href="" class="remove_input">remove</a>') 
     newDiv.find('input').each(function() { 
      $(this).val(''); 
     }); 
     $($class + ':first div:last').before(newDiv); 
     $(this).prev('a.add_input').remove(); 
     alert(ok) 
    }); 

    $('a.remove_input').live('click', function(event) { 
     event.preventDefault(); 
     $(this).closest('div').remove(); 
    }); 
}); 
+0

我试图让你的问题更容易理解。随意回滚或编辑它。 –

回答

2

全部删除,但是从集合中最后.add_input

$(this).closest('.find_input').find('.add_input:not(:last)').remove(); 
+0

不,没有工作。 –

+0

我在我的编辑中犯了一个错误...只有在最后一个元素时才显示“添加”链接...对于混淆抱歉: -/ –

+0

它有问题,请参阅:http://jsfiddle.net/ 4BnHy/2/ –