0

私はこれをどのように行うかを理解するのにかなりの問題を抱えています:

$('.add_education').click(function() {
    $('#education_form_clone:last').last().clone(true).appendTo('#education_form_container');
});

新しく作成された要素の場合、最後の要素は選択されません。基本的に、最後のクローンを作成したいと思い#education_form_cloneます(値を取得するため)。これは動的に作成され、以前はこのような問題を解決する必要があったためですが、どのように管理したかが一生わかりません。

4

2 に答える 2

3
  1. 同じIDを持つ複数の要素を持つことはできません!無効なHTMLです。
  2. 正当な理由もなく、 lastを2回(:lastおよび)使用します。.last()

classの代わりに使用する必要がありますid

$('.add_education').click(function() {
    $('.education_form_clone:last').clone(true).appendTo('#education_form_container');
});
于 2012-05-28T21:23:44.740 に答える
0

をクラスに変更するeducation_form_clone </div>と、次のようになります。

HTML

<div id="edutcation_form_container">
    <div class="education_form_clone">Education Form Element</div>
</div>

<a href="#" class="add_education">Click Me to Clone</a>

JS

$('.add_education').bind('click', function(e){
    e.preventDefault();
    var $clone = $('.education_form_clone').filter(':last').clone();
    $('#edutcation_form_container .education_form_clone').filter(':last').after($clone);

    console.log($clone);
});​

ここでフィドル

于 2012-05-28T21:32:40.917 に答える