jQuery计数动态添加元素的个数

uqjltbpv  于 12个月前  发布在  jQuery
关注(0)|答案(2)|浏览(119)

参考随附的屏幕截图,ID为“item”的div是由

$("#items").prepend(template);

字符串
其中template是每个id为'item'的div的html,如果我得到$('#item').length但它总是返回1,有人知道为什么吗?我如何获得正确的item数?

var num = $('#item').length;
alert(num);


x1c 0d1x的数据

6uxekuva

6uxekuva1#

使用class属性而不是id属性,因为id属性在页面中应该是唯一的。它的示例如下所示:

$(document).ready(function() {
  $("#addItem").click(function() {
    var template = '<div class="item">Item</div>';
    $("#items").prepend(template);
    var num = $(".item").length; // <--- notice here
    alert(num);
  });
});

个字符

ezykj2lf

ezykj2lf2#

你将一个id = "item"的新元素附加到另一个id = "items"的元素上,所以你实际需要的是#items内部的子元素的数量:

$("#items").children().length;

字符串
在任何情况下,正如@mandy8055所指出的那样,您正在创建多个具有重复id(#item)的项目。您可以使用类轻松解决这个问题,因此以下内容将起作用:

$(".item").length

相关问题