使用 jQuery 按 ID 删除 DOM 元素

Posted

技术标签:

【中文标题】使用 jQuery 按 ID 删除 DOM 元素【英文标题】:Delete DOM elements by ID using jQuery 【发布时间】:2017-11-29 12:30:30 【问题描述】:

我正在尝试删除动态创建的 DOM 元素,但由于某种原因我无法让它工作。

它可以使用我指定的 ID 正常创建对象,但不会删除。 对if 语句的检查正在运行,因为它会打印出console.log()

有什么想法吗?

function displayLive()

  var previous = null;
  var current = null;
  setInterval(function()
              
    $.ajax(
      url: '/showLive',
      dataType: 'json',
      contentType: 'application/json',
      success: function(response) 
      
        current = JSON.stringify(response);
        if(previous !== current)
        
          var obj = JSON.parse(response);
          console.log(obj);
          for(var i = 0; i < obj.active.length; i++)
          
            if(obj.active[i].active === true)
            
              $('.left').prepend($('<div/>', class: 'profTemp', id: obj.active[i].userNameData).append(
                $('<img/>', src: obj.active[i].profiler, width: 40, height: 40),
                $('<span/>', text: " " + obj.active[i].userNameData))); 

            
            else if(obj.active[i].active === false)
            
              $('#%s' , obj.active[i].userNameData).remove();
              console.log("getting in false");
            
          
        
      
    ); 
    previous = current; 
  , 2000);   

【问题讨论】:

我认为 %s 仅在 console 方法中存在。我不知道jQuery是否支持它。尝试连接 id。 我也试过了,还是不行 也可能是 userNameData 有一个 '.' (点)在那里导致jquery出现问题并找到该项目。 $(document.getElementById(obj.active[i].userNameData)).remove() 可能会有所帮助 成功了!谢谢大家! 别担心,如果你能检查一下,我已经给出了答案 【参考方案1】:

用户名中有一个点(或其他选择字符)。使用

 $(document.getElementById(obj.active[i].userNameData)).remov‌​e()

为了解决这个问题。

【讨论】:

【参考方案2】:

尝试改变:

$('#%s' , obj.active[i].userNameData).remove();

收件人:

$('#' + obj.active[i].userNameData).remove();

【讨论】:

为什么您认为这是答案?请解释一下,为什么起作用,如何起作用? 因为我使用javascript连接例如:codevar id = obj.active[i].userNameData; // 字符串 id = 'userName' $('#' + id).remove();等同于:$('#userName').remove();code 在你的帖子中包含解释,伙计,不要在 cmets 中。解释串联是如何工作的,解释区别在于符号。

以上是关于使用 jQuery 按 ID 删除 DOM 元素的主要内容,如果未能解决你的问题,请参考以下文章

jquery里面的DOM操作(查找,创建,添加,删除节点)

如何用jquery创建一个dom元素?

从 jQuery 选择中删除没有 id 的元素?

使用 jQuery 按值删除 JSON 数组中的元素

用 jQuery 删除 <link> 元素?

锋利的jQuery读书随笔