我有一个名为“items”的div,在其中我有一些其他类与其他类(.itema,.itemb,.itemc等),我想只显示每个div的一个元素并计算它们(仅仍然在“项目”div上的那些。
我尝试使用以下代码对它们进行计数......但没有奏效:
var na = $('#items.itema').size();
$('.itema').append(' x ', na);
var nb = $('#items.itemb').size();
$('.itemb').append(' x ', nb);
答案 0 :(得分:0)
#items.itema
选择id
items
和itema
类的元素。您希望选择#items
内的所有元素,其类为itema
,这是使用后代组合子(空格)完成的:
#items .itema
答案 1 :(得分:0)
只需将代码更改为:
var na = $('#items .itema').size();
$('.itema').append(' x ', na);
var nb = $('#items .itemb').size();
$('.itemb').append(' x ', nb);
这是更新的jsFiddle:http://jsfiddle.net/leniel/g32gH/12/
现在我看到你正在使用jQuery UI Sortable组件。我想你想要这样的东西:
$("#items").sortable({
connectWith: "#other"
});
$("#other").sortable({
connectWith: "#items"
});
$("#other, #items").on("sortreceive", function(event, ui)
{
var na = $('#items .itema').size();
$('.itema').html('itema X ' + na);
var nb = $('#items .itemb').size();
$('.itemb').html('itemb X ' + nb);
});
这是JS Bin演示:http://jsbin.com/ixowed/1/edit
答案 2 :(得分:0)
$(document).ready(function(){
var items = new Array();
$('#items p').each(function(i,element){
items[$(element).attr('class')]++;
});
$(items).each(function(clas,count){
$(clas).hide();
$(clas).first().show().append(' X '+count);
});
});