Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery:如何定位第一个重复的列表项?_Javascript_Jquery - Fatal编程技术网

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-这不是你要找的吗?->