gpt4 book ai didi

javascript - 如何从 div 中删除重复的 ID,但保留原始 ID

转载 作者:行者123 更新时间:2023-11-30 13:14:36 24 4
gpt4 key购买 nike

免责声明:我完全知道 id 属性用于唯一 ID。在我的例子中,当 ajax 请求比平时花费更长的时间时,它可能会出现故障,导致两条相同的聊天消息。我也知道那里有类似的问题,但我一直无法找到解决我的问题的问题。


这就是我想要做的:

  1. div chat_log 中是否有任何重复的 ID?
  2. 它们是什么?
  3. 删除所有重复项
    • 确保原来的那个还在。

我试过使用下面的代码:

         $('[id]').each(function () {
var ids = $('[id=' + this.id + ']');
if (ids.length > 1 && ids[0] == this) {
$(ids[1]).remove();
}
});

但我不确定如何根据我的情况调整该方法,也不确定是否可行。

最佳答案

您如何确保某样东西是独一无二的?假设您有一堆蔬菜( cucumber 、萝卜、比萨饼等)。您希望确保颜色的唯一性,确保任何颜色只出现一次。你是怎么做到的?

我要做的是列一个 list 。我会检查每一种蔬菜,检查它的颜色。如果该颜色已在列表中,我们将从该束中移除该蔬菜。否则,我们将其保留原样并将其颜色添加到我们的列表中。

一旦理解了该逻辑,我们所需要做的就是将其转换为代码!多么微不足道的事情(当然是在纸上。)

//assumes $elem is the element you're deleting duplicates in

//create the ids list we'll check against
var ids = {};

//go over each element
var children = $elem.children();
for ( var i = 0, len = children.length; i < len; i++ ) {
var id = children[ i ].id;

//was this id previously seen?
if ( ids.hasOwnProperty(id) ) {
$( children[i] ).remove();
}
//a brand new id was discovered!
else {
ids[ id ] = true;
}
}
//done!

这是非常简单明了的逻辑版本。您可以使用一些奇怪的嘶嘶声选择器做出更奇特的方式,但这应该让您入门。

演示(没有 jquery):http://tinkerbin.com/qGJpPsAQ

关于javascript - 如何从 div 中删除重复的 ID,但保留原始 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12519188/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com