Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 通过单击按钮将父div添加/删除到另一个div_Jquery_Appendto - Fatal编程技术网

Jquery 通过单击按钮将父div添加/删除到另一个div

Jquery 通过单击按钮将父div添加/删除到另一个div,jquery,appendto,Jquery,Appendto,我想在点击按钮时将按钮的父div“.card”添加到蓝色div中,并在再次点击按钮时能够“返回”到原始红色div。 卡#1 卡片#2 功能移动按钮(elem){ if($(elem.parent().attr(“id”)=“未选择”){ $(elem).detach().appendTo('选定'); } 否则{ $(elem).detach().appendTo('#nonSelected'); } } 首先id属性在文档中必须是唯一的,因此您应该从输入中删除id属性(或使其唯一)。其次,

我想在点击按钮时将按钮的父div“.card”添加到蓝色div中,并在再次点击按钮时能够“返回”到原始红色div。


卡#1
卡片#2
功能移动按钮(elem){
if($(elem.parent().attr(“id”)=“未选择”){
$(elem).detach().appendTo('选定');
}
否则{
$(elem).detach().appendTo('#nonSelected');
}
}

首先
id
属性在文档中必须是唯一的,因此您应该从
输入
中删除
id
属性(或使其唯一)。其次,您的fiddle示例不包括jQuery

要解决实际问题,您可以使用
closest()
输入中检索父
.card
。然后,您可以通过检查它当前包含在哪个分区中,将它添加到所需的
div
,如下所示:

$('.card input').click(function() {
    var $card = $(this).closest('.card')
    $card.appendTo($card.closest('#nonSelected').length ? '#selected' : '#nonSelected');
});

注意,您根本不需要调用
detach()
,因为元素只是在DOM中移动。还请注意,最好使用不引人注目的javascript来附加事件处理程序,而不是在*
事件属性上使用笨重且过时的
。因为您已经包含了jQuery代码,所以我使用它来实现这一点。

请注意,ID必须是唯一的
$('.card input').click(function() {
    var $card = $(this).closest('.card')
    $card.appendTo($card.closest('#nonSelected').length ? '#selected' : '#nonSelected');
});