我创建了已检查输入标签的克隆并将其输出到标题区域。这是预期的,直到表单提交(它使用AJAX)。我想搜索在提交表单时检查的任何输入,然后重新创建它们的克隆。
以下代码的问题在于它为每个输入创建一个克隆(所有输入都使用相同的类),无论是否检查输入。我认为这是因为if
中的内容针对的是所有元素,而不仅仅是检查过的元素。当我在$(this)
中使用if
时,它似乎不仅仅是指被检查的元素,而是一个对象。
如何将if语句中的内容仅应用于选中的复选框?
if ($('.my-input').is(':checked')) {
$('.my-input').next('label').clone().appendTo('.my-header');
$('.my-input').next('label').addClass('is-checked');
}
答案 0 :(得分:2)
在checked
selector
$('.my-input:checked')
$('.my-input:checked').each(function() {
$(this).next('label').clone().appendTo('.my-header');
$(this).next('label').addClass('is-checked');
});
答案 1 :(得分:0)
你可以这样做:
data
答案 2 :(得分:0)
您可以执行此操作以获取所有选中的复选框
$(":checkbox:checked")