每个项目点击仅增加一次计数器

时间:2014-06-12 16:59:13

标签: jquery

下面的代码基本上会在单击具有单个类的项目时递增计数器。单班有很多项目。我需要做的是,即使单个项目被多次点击,如何使计数器增加一次也是如此。

var counter = parseInt($.trim($(".counter").html())); 
items.click(function(){
    if($(this).hasClass("single")) { 
        $(this).addClass("selected");
        //increment counter            
        $(".counter").html(++counter);

        //if ($(this).hasClass("selected")) {               
        //    $(".counter").html(counter);
        // }
    }
    else { 
        return false;
    }

    return false;
});

2 个答案:

答案 0 :(得分:1)

如果您在增加计数器后可以从代码中删除课程single,则可以解决问题。

但是,您可能需要该课程用于其他事情,所以这是我们能够处理它的另一种简单方法:

var counter = parseInt($.trim($(".counter").html())); 
items.click(function(){
    if($(this).hasClass("single") && !($(this).hasClass("selected"))) { 
        $(this).addClass("selected");
        //increment counter            
        $(".counter").html(++counter);
    }
});

最后,您使用的是jQuery UI Selectable吗?如果是这样,selected类可能与自动生成的代码冲突。

答案 1 :(得分:0)

尝试这种方式只点击一次

$('#first_name').one('click', function()
{
console.log('a')
});