使用 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)).remove()
为了解决这个问题。
【讨论】:
【参考方案2】:尝试改变:
$('#%s' , obj.active[i].userNameData).remove();
收件人:
$('#' + obj.active[i].userNameData).remove();
【讨论】:
为什么您认为这是答案?请解释一下,为什么起作用,如何起作用? 因为我使用javascript连接例如:code
var id = obj.active[i].userNameData; // 字符串 id = 'userName' $('#' + id).remove();等同于:$('#userName').remove();code
在你的帖子中包含解释,伙计,不要在 cmets 中。解释串联是如何工作的,解释区别在于符号。以上是关于使用 jQuery 按 ID 删除 DOM 元素的主要内容,如果未能解决你的问题,请参考以下文章