我很难克隆单选按钮及其默认的检查状态。如何克隆jQuery中的默认选中状态的单选按钮?
这里是我的HTML:
<div class="container">
<div class="a2">
<input type="radio" name="selection_1" value="name" checked="checked" /> Name
<input type="radio" name="selection_1" value="url" /> URL
<div class="text">
<textarea name="name[]">Enter name: </textarea>
</div>
<div class="url">
<textarea name="url[]">http://</textarea>
</div>
</div>
</div>
<input type="button" class="clone" value="Clone" />
这是我的jQuery:
$('.a2 [name]').change(function() {
if($(this).val() == "name") {
$(this).parent().find('.url').css({'visibility': 'hidden', 'display':'none'});
$(this).parent().find('.text').css({'visibility': 'visible', 'display':'block'});
} else {
$(this).parent().find('.text').css({'visibility': 'hidden', 'display':'none'});
$(this).parent().find('.url').css({'visibility': 'visible', 'display':'block'});
}
});
$('.clone').click(function() {
var p = $('.a2:first').length;
var cloned = $('.a2:first').clone()
.find('.a2 [name]').attr('name', 'selection_' + ++p).end()
.appendTo('.container');
});
我想实现的是克隆按钮应该克隆单选按钮,整组和文本区域默认的检查状态也被克隆到新的集合中。单选按钮应该通过在每个副本上增加前缀编号(如selection_2,selection_3等)来重命名,以便每个集合上的无线电选择独立工作。
这里是小提琴:http://jsfiddle.net/Tz66H/
您需要指定一个不同的名称,以每个无线电组。就像你为selection_1完成的那样,然后在第一次克隆之后,它将是selection_2等等。 – 2013-03-04 11:00:45