我想收集已点击的div
的每个ID,然后将该值分配给var
。
这是我的代码:
$('div.kim2bb').on('click', function(){
var el = el + ', ' + $(this).attr('id');
alert(el);
});
我尝试了这个,但每次点击el
重置时,我该如何阻止它重置?
答案 0 :(得分:5)
将el
的初始声明移到点击事件之外:
var el = '';
$('div.kim2bb').on('click', function(){
el += ', ' + $(this).attr('id');
alert(el);
});
这会导致变量存在于另一个范围内。
你应该使用数组:
var el = [];
$('div.kim2bb').on('click', function(){
el.push( $(this).attr('id') );
alert(el.join(", "));
});
答案 1 :(得分:2)
将其保存在一个数组中。使以后更容易使用。 (我的意见)
el=[];
$('div.kim2bb').on('click', function(){
el.push($(this).attr('id'));
console.log(el);
});
答案 2 :(得分:0)
之前给出的答案的进一步迭代是测试先前是否已经添加了项目
var ids=[];
$('div.kim2bb').on( 'click', function(){
var id = $(this).attr("id");
// if id has not been added before
if( ids.indexOf( id ) == -1 ) {
ids.push( id );
}
console.log( ids.join( "," ) );
});