所以我有这段代码:
<body>
<div id="pages"></div>
<script type="text/javascript">
$(function(){
function createDiv(divclass,text) {
$('<div/>', {
class: 'page' + divclass,
html: '<p>' + text + '</p>'
}).appendTo('#pages');
}
for (var i = 1; i <= 4; i++){
createDiv("",i);
}
var pagesdisplay = $('page').length;
console.log(pagesdisplay);
});
</script>
输出是:
<div class="page">
<p>1</p>
</div>
<div class="page">
<p>2</p>
</div>
<div class="page">
<p>3</p>
</div>
<div class="page"><p>4</p></div>
当我查看控制台时它向我显示0.如何计算由我的函数自动生成的div?
编辑:我可以为(pagedisplay ++)增加页面显示,但这不是我想要的。
答案 0 :(得分:8)
替换:
$('page').length;
使用:
$('.page').length;
使用class selector
时,您需要在类名前加一个点(.
)。否则$('page')
正在您的DOM中寻找<page>
元素,这显然不存在。
答案 1 :(得分:2)
有一个拼写错误,你希望选择器说$('。page')