2010-08-17 19 views
33

Tablo Satırını jquery ile kopyalayın ve control'ler için yeni Benzersiz Ids oluşturun. Clone verileri de kopyalayamaz. kopyalanacak veriler. Böyle bir şey yapabileceğini i txtTitle1, link1, TITLE2, bağlantı2 vbTablo Satırını jquery'de klonla nasıl kopyalayın ve denetimler için yeni Benzersiz Ids oluşturun

+0

Bazı örnek işaretler gösterebilir misiniz? –

+0

Satırı kopyalayabilir ve daha sonra verileri değiştirebilir misiniz? – cam

+0

Eklendi Örnek kod –

cevap

80

gibi, tüm yeni satırlar için benzersiz kimlikleri oluşturmak için gereken

<tr> 
    <td><input type="text" id="txtTitle" name="txtTitle"></td> 
    <td><input type="text" id="txtLink" name="txtLink"></td> 
</tr> 

:

tablo satırı aşağıdaki bilgileri içerir :

var i = 1; 
$("button").click(function() ​​​{ 
    $("table tr:first").clone().find("input").each(function() { 
    $(this).val('').attr('id', function(_, id) { return id + i }); 
    }).end().appendTo("table"); 
    i++; 
})​;​ 

Bu yeni satırlar için değerleri boşaltmak vb txtTitle1, txtTile2 ile başlayan onlara benzersiz kimlikler verecek

You ca give it a try here. Eğer name değiştirmek gerekirse çok ben biraz daha temiz, böyle tutmak için .attr() bir nesneyi geçerdi:

var i = 1; 
$("button").click(function() { 
    $("table tr:first").clone().find("input").each(function() { 
    $(this).attr({ 
     'id': function(_, id) { return id + i }, 
     'name': function(_, name) { return name + i }, 
     'value': ''    
    }); 
    }).end().appendTo("table"); 
    i++; 
});​ 

You can try that version out here.

+17

Bu, beni neredeyse gözyaşlarına sürükleyen güzel bir JavaScript. Ayrıca, işlev (_, id) 'işlevini bunun gibi bir öznitelik atamasında kullanabileceğinizi hiçbir fikrim yoktu. Bir milyon kere teşekkür ederim. – Portman

+0

işlevi (_, id) zaferdir. Bunun için teşekkürler – MZAweb

+0

Örneğin onclicks ile ilgili olaylar hakkında nelerdir? – Maxrunner

İlgili konular