如何在点击(Javascript)上为数组添加值,如果它已经存在则将其删除

时间:2013-09-25 14:28:53

标签: javascript arrays loops for-loop click

我的问题在这里:

我需要在点击dom中的元素时为数组添加值(为空)。它会将data-id添加到数组中。我需要创建一个循环来向这个数组添加多个data-id但是当我想删除它时我失败了。

有什么想法吗?这是代码:

    $arr = [];
    $('.friends-list').live('click', function(){

    var $str = $(this).attr('data-id'),
        $yourFriends = false;

        $arr.push($str);

        console.log($arr);



    if($ids != ''){
        $('#jsSubmit').removeClass('desactive');
        $yourFriends = true
    }

    if($yourFriends == true){
        $('#jsSubmit').prop('disabled', false);
    }else {
        $('#jsSubmit').prop('disabled', true);
    }

});

1 个答案:

答案 0 :(得分:0)

这样的东西会用你的每个.friends-list

的data-id填充你的数组
$('.friends-list').live('click', function(){
...
    var arr = [];
    for(var x = 0; x < jQuery(this).length; x++){
       var dataIDstr = jQuery(this).attr('data-id');
       arr.push(dataIDstr);
    }
...

我希望我理解你在寻找什么,让我知道! :)

另外,建议使用.on()而不是.live()

最佳