【发布时间】:2016-04-20 12:02:45
【问题描述】:
我知道以前有人问过类似的问题,但我尝试了所有答案,但没有任何效果。每次点击buttons 和class ognjen 时,我都会创建我的array。所以它看起来像这样:
<button type="button" name="10208823390691752,1317727711586522" value="All contacts" class="btn btn-default ognjen">All contacts</button>
<button type="button" name="10207252567926988,1294280923934896" value="Men" class="btn btn-default ognjen">Men</button>
<button type="button" name="10208823390691752,10207252567926988" value="Women" class="btn btn-default ognjen">Women</button>
<button type="button" name="1317727711586522,1294280923934896" value="Segment 1" class="btn btn-default ognjen">Segment 1</button>
这就是我设法用所有点击元素的值创建一个数组的方法:
$(document).ready(function() {
var clickedButtons = new Array();
var numUsers= new Array();
$('button.ognjen').click(function() {
var index = clickedButtons.indexOf(this.value);
if (index === -1){
clickedButtons.push(this.value);
numUsers.push(this.name);//value not found so push it
}else {
clickedButtons.splice(index, 1);
numUsers.splice(this.name);// value found so remove it
}
var tryIt=numUsers.join();
var picker=tryIt.split(', ');
console.log(picker);
});
所以picker 现在是一个数组,在单击某些按钮后可能如下所示:
["10207252567926988,1294280923934896,10208823390691752,1317727711586522,1294280923934896"]
现在,我想从这个数组中删除所有重复的元素。尝试从这些问题中得到答案:
- How to remove duplicates from array - javascript
- Easiest way to find duplicate values in a JavaScript array
- Remove duplicate elements from array using JavaScript
- Remove Duplicates from JavaScript Array
它们都没有奏效。我认为这可能是由于制作这个piker 数组的动态。请帮忙,我整天都在为这个问题苦苦挣扎。
【问题讨论】:
-
numUsers.splice(this.name);应该是numUsers.splice(index, 1); -
这是一个只有 1 个元素的数组(一个包含许多数字的字符串),因此删除重复项会很困难,因为没有。
-
按钮没有名称
-
@Arun P Johny,当我之后单击所有联系人和女性时,它不是在制作一个字符串,而是在您的小提琴中制作两个。你能解决这个问题,我认为一切都会正常吗?
标签: javascript jquery arrays