0

单击任何子图像时,如何删除整个 div?这是我的 HTML:

<div id="list1">
        <img src="FILE1.JPG" class="img">
        <img src="FILE2.JPG" class="img">
        <img src="FILE3.JPG" class="img">
</div>

<div id="list2">
        <img src="FILE4.JPG" class="img">
        <img src="FILE5.JPG" class="img">
        <img src="FILE6.JPG" class="img">
        <img src="FILE7.JPG" class="img">
</div>

这是jQuery:

$('.img').click(function() {
    var $img = $(this);
    $.ajax({
        url: 'save-image.php?q=' + $(this).attr('id'),
        dataType: 'json',
        success: function(data) {
            $img.closest('div').remove();
        }
    });
});

我需要在单击图像时运行更新脚本,但随后我需要整个 div 消失。此代码不起作用。

4

6 回答 6

3

使用 jQuery.parent().remove()

于 2012-09-19T16:35:10.833 回答
3
    $('img').click(function() {

    var clicked = $(this);

    $.ajax({
        url: 'ajax.php?q=' + $(this).attr('id'),
        dataType: 'json',
        success: function(data) {

            clicked.parent('div:first').remove();

        }
      });
    });
于 2012-09-19T16:42:25.323 回答
2

您可以尝试 parent 和 remove 方法

$('img').click(function() {
    var $this = $(this);
    $.ajax({
        url: 'ajax.php?q=' + $this.attr('id'),
        dataType: 'json',
         success: function(data) {
            $this.parent().remove();
         }
     });
});
于 2012-09-19T16:59:37.633 回答
1

试试这个,

现场演示

$('img').click(function(){    
  $(this).closest('div').remove();
});

如果您可以为 img 分配一些类会更好

$('.img').click(function(){    
  $(this).closest('div').remove();
});
于 2012-09-19T16:34:36.043 回答
1

如果您使用的是 jQuery,那么您可以:

$('img').on('click', function(e) {
   $(this).parent().remove();
}
于 2012-09-19T16:34:44.863 回答
1

应该可以帮助您完成任务。

parent( [selector] ) 返回:jQuery 描述:获取当前匹配元素集中每个元素的父元素,可选地由选择器过滤。

页面上给出的第一个示例与您的问题几乎相同。

于 2012-09-19T16:36:14.853 回答