Javascript jQuery:如何正确选择.parent.prev?

Javascript jQuery:如何正确选择.parent.prev?,javascript,jquery,Javascript,Jquery,通常我使用jquery: $( ".product_imgfiles a" ).click(function(event) { $( this ).parent( "div" ).remove(); }); 但是,它只适用于文档就绪,而不适用于新的附加元素。然后我换成这样: $(document).on("click", ".product_imgfiles a", function() { $( this ).parent( "div" ).remove(); }); 但是,在

通常我使用jquery:

$( ".product_imgfiles a" ).click(function(event) {
   $( this ).parent( "div" ).remove();
});
但是,它只适用于文档就绪,而不适用于新的附加元素。然后我换成这样:

$(document).on("click", ".product_imgfiles a", function() {
   $( this ).parent( "div" ).remove();
});
但是,在第二个例子中,我的代码没有删除div。我在这个论坛上读了一些帖子,并修改成一些组合:

$( this ).prev().parent( "div" ).remove();
$( this ).parent( "div" ).prev().remove();
$( this ).parent().prev( "div" ).remove();
它们都没有成功删除当前
.product\u imgfiles
的父div。在这种情况下如何正确选择

更新:HTML结构

<div id="product_imgfiles_container" class="row">
    <?
        if (isset ($product_imgfiles)) {
            for ($i=2; $i<($num_product_imgfiles+2); $i++) {
                echo '<div class="col-xs-4 col-md-2" style="padding-left: 7px; padding-right: 7px;">
                        <div class="thumbnail product_imgfiles">
                            <img src="'. $directory . $product_imgfiles[$i] .'" style="margin-bottom: 5px;">
                            <a href=""><span><i class="fa fa-times-circle"></i> hapus</span></a>
                        </div>
                    </div>';
            }
        }
    ?>
</div>

$(此)
在事件处理程序中指的是


我建议在
.product\u imgfiles
元素的父元素中添加一个类,并使用该类从DOM中删除该元素

HTML:

echo '<div class="col-xs-4 col-md-2 productContainer"> ...
//                                  ^^^^^^^^^^^^^^^^  Add this class
$(this).closest('.productContainer').remove();
成功

$(document).on("click", ".product_imgfiles a", function() {
   $( this ).parent().parent().remove();
});

您需要删除
product\u imgfiles
div的父项。

您使用了带有
href=“”
的锚定标记,以便在单击时刷新页面,这就是您没有看到任何div被删除的原因。只需添加
e.preventDefault()在.remove()调用之前,如下所示:

$(document).on("click", ".product_imgfiles a", function(e) {
    e.preventDefault();
    $( this ).parent().parent().remove();// remove the div containing the div.product_imgfiles
});

显示您的html结构。是否将元素附加到同一个div或新div?如果不理解
DOM结构
@KartikeyaKhosla:hi bro,请检查上面的更新。@RayonDabre:请检查上面的DOM结构,就不可能推荐有效的选择器。刚刚更新。这将删除col-xs-4div@madalinivascu那不就是什么吗wants@madalinivascu这就是OP所寻找的
它们都没有成功地删除current.product\u imgfiles的父div
$(document).on("click", ".product_imgfiles a", function(e) {
    e.preventDefault();
    $( this ).parent().parent().remove();// remove the div containing the div.product_imgfiles
});