Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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_Jquery - Fatal编程技术网

使用jquery从同一类组中删除特定div

使用jquery从同一类组中删除特定div,jquery,Jquery,下面是我在elements页面上创建的HTML <div class="Att-Table"> <div class="FileRow"> <div class="Cell"> <span><input id="browse" type="file"/></spa

下面是我在elements页面上创建的HTML

<div class="Att-Table">
                        <div class="FileRow">
                             <div class="Cell">
                                <span><input id="browse" type="file"/></span>
                            </div>
                            <div class="Cell">
                                <span><input placeholder="Description" id="desc" type="text"/></span>
                            </div>
                            <div class="Cell">
                                <span><a id="img1" href="#"><img class="delete" src="img/delete.png" /></a></span>
                            </div>
                        </div>
<div>

我的要求是每次单击“添加另一个”按钮时克隆下面的div

<span>Add Another<a href="#" id="FileAdd"><img src="img/add.png" class="add" /></a></span>
添加另一个
单击按钮后,我调用克隆js,如下所示

$("#FileAdd").click(function() {
    var newElement = $(document.createElement('div')).attr({
        class: "FileRow"
    });
    newElement.html('<div class="Cell">\
                        <span><input id="browse" type="file"/></span>\
                    </div>\
                    <div class="Cell">\
                        <span><input placeholder="Description" id="desc" type="text"/></span>\
                    </div>\
                    <div class="Cell">\
                        <span><a id="img1" onclick="FileAdd" href="#"><img class="delete" src="img/delete.png" /></a></span>\
                    </div>');
    newElement.appendTo(".Att-Table");
});
$(“#文件添加”)。单击(函数(){
var newElement=$(document.createElement('div')).attr({
类:“文件行”
});
html('\
\
\
\
\
\
\
\
');
newElement.appendTo(“.Att Table”);
});
我有一个类为“FileRow”的div来对这些新创建的元素进行分组。现在我的要求是从克隆的组中删除一个特定的div。我是Jquery新手,如果有人能帮我解决这个问题,我会很有帮助。

这很有效。

jQuery(document).ready(function()){
window.jQuery('.delete')。在('click',function()上{
jQuery(this).closest('.FileRow').remove();
});
});

您需要使用事件委派将事件绑定到动态添加的DOM:

 $('body').on('click','.delete',function(){
    $(this).closest('.FileRow').remove();
 });

因此,首先可以将
document.createElement('div')
替换为
,这将产生完全相同的结果

其次,它很简单。因为您知道dom结构,所以只需将单击处理程序绑定到delete按钮,并请求从dom中删除单击元素的父元素

这为您的fileAdd函数提供了类似的功能,该函数可能应该重命名,因为名为
add
delete
操作有点奇怪:

function fileAdd() {
    $(this).parent().parent().remove();
}

从克隆组中删除一个特定元素
该元素是什么?(1)“…要求删除一个特定元素…”:哪一个?您如何识别该特定元素?(2) 您正在通过克隆复制您的ID…以及如何删除元素?您想在每个字段旁边都单击“删除”按钮吗?基本上每次我克隆时,都会创建一个具有相同类名“FileRow”的新div,其中包含多个元素。还有一个删除按钮。我需要在单击删除按钮时删除该div。感谢您为我提供的解决方案:),而且第一个提示非常有用
function fileAdd() {
    $(this).parent().parent().remove();
}