Javascript jQuery:如何定位第一个重复的列表项?
我有一个事件清单。我想删除任何具有重复名称和日期的事件,但它们可以有不同的位置。我可以使用这个线程中的一个变体代码成功地删除重复项-但是我想隐藏第一个重复项的位置信息,我似乎无法将其作为目标。这是我到目前为止的代码Javascript jQuery:如何定位第一个重复的列表项?,javascript,jquery,Javascript,Jquery,我有一个事件清单。我想删除任何具有重复名称和日期的事件,但它们可以有不同的位置。我可以使用这个线程中的一个变体代码成功地删除重复项-但是我想隐藏第一个重复项的位置信息,我似乎无法将其作为目标。这是我到目前为止的代码 $('li').each(function() { var name = $(this).find('.name').text(); var dates = $(this).find('.dates').text(); var nameAndDates = n
$('li').each(function() {
var name = $(this).find('.name').text();
var dates = $(this).find('.dates').text();
var nameAndDates = name + dates;
if (seen[nameAndDates]) {
$(this).remove();
}
else {
seen[nameAndDates] = true;
}
});
在那里的某个地方,我需要以第一个重复的项目为目标,并添加一些沿着
$(this).find('.location').hide();
有什么想法吗?数一数,只有在第一次重复时才删除
var seen = {};
$('li').each(function() {
var name = $(this).find('.name').text();
var dates = $(this).find('.dates').text();
var nameAndDates = name + dates;
if (nameAndDates in seen && seen[nameAndDates] === 1) {
$(this).find('.location').hide();
}
seen[nameAndDates] = nameAndDates in seen ? seen[nameAndDates] + 1 : 1;
});
你的问题不清楚。什么坏了?很抱歉。这里有一个JSFIDLE来更好地说明我的意思-在这个示例中。。。除了我需要从第一个重复的项目中删除位置(“任意位置”)之外,一切都正常。我认为他的问题是删除第一个重复项目的
.location
。@fabriciomatté-在这种情况下,仅仅使用OP的代码不就可以解决吗?不确定我现在明白了吗?确切地说法布里科said@adeneo是的,我和你在同一条船上。@Andrewoule-这不是你要找的吗?->