【问题标题】:removing DOM element on jQuery not working删除 jQuery 上的 DOM 元素不起作用
【发布时间】:2015-01-31 08:09:40
【问题描述】:

所以。我使用了一个原型,它将创建一个 div 元素 (var $mainDiv),其中包含几个其他元素,当调用它时,我得到一个小部件框。 这个 div 元素嵌套在一个名为 wrapper(id wrapper)的 div 中。

后来我创建了这个函数:

$dismissButton.click(function() { 
    $("#wrapper").remove($mainDiv);
});

因为当我单击关闭按钮(嵌套在 div 和小部件框的一部分内)时,我希望它使整个框消失。

它不工作。 我究竟做错了什么? (也试过.empty()

【问题讨论】:

  • 您要删除#wrapper$mainDiv
  • 你试试$("#wrapper").remove($mainDiv); ?你可以显示 jquery 和 html 吗?
  • 我的错,我使用的不是分离,它的 remove()、empty() 和分离,它们都是 Barmer,我想在单击按钮时删除 maindiv 和其中的所有内容
  • 显示更多 html 和 jquery
  • 如何在快速评论中正确发布代码? (代码太长了)

标签: jquery


【解决方案1】:

如果要删除$mainDiv,应该是:

$mainDiv.remove();

.remove() 删除应用该方法的元素。如果你使用一个参数,它应该是一个过滤元素集的选择器。例如

something.remove(selector);

相当于:

something.filter(selector).remove();

在您的情况下,由于 $mainDiv 不是 $("#wrapper") 中的元素之一,因此它没有删除任何内容。

【讨论】:

  • 所以。首先,您将获得“今日天才”奖。非常感谢第二个,这样我以后就不会陷入困境了。当我开始创建盒子时,我将 maindiv 附加到包装器中。因此我确信 maindiv 是包装器中的元素之一,所以我需要对这一切做一个简单的解释,它可以工作。非常感谢。
  • 我不知道new notification() 做了什么。这不是一个标准的 Javascript 类,它是你代码中的东西。
  • 这是一个我当然可以用参数调用的对象。这个问题就解决了。现在我有了这个东西......我创建了几个盒子,它们堆叠在一起,一个在另一个之上。当我单击按钮时,它们都一起消失了。我设法给每个盒子一个特定的 id(我们称它为随机 id,虽然它不是真正随机的,但至少它们不都被称为“main-div”)但问题仍然存在
  • 我知道这是一个对象。但是如果不知道这个对象做了什么,我就不可能猜出出了什么问题。您需要发布一个新问题,并显示该对象的详细信息。
猜你喜欢
  • 2018-03-18
  • 2020-09-13
  • 1970-01-01
  • 2023-03-24
  • 2020-03-12
  • 2015-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多