如何使用JavaScript计算asp.bulletedlist中列表项的数量

时间:2010-03-12 17:02:28

标签: javascript controls bulletedlist

我有一个asp:bulletedlist控件,它位于div标签内,我需要计算控件中列表项的数量。搜索互联网,并注意到项目返回的html是一个列表,即<li>,我想我可以使用一个例子:

var listcontrol = document.getElementById('BulletedList1');
var countItems = listcontrol.getElementByTagName('li').length;

然而,当我这样做时,它会抛出错误并说该控件没有对象。

所以,我的问题是,因为我必须这样做客户端,因为我想用它来设置div标签的高度,你如何用javascript计算asp:bulletedlist控件中的项目数? / p>

1 个答案:

答案 0 :(得分:1)

您不能像使用它一样使用document.getElementById,因为呈现时Asp.Net控件的实际ID与您为控件上的ID设置的ID不同。查看您的页面来源,您将看到实际ID是什么。然后,如果需要,您可以使用它,并且此代码应该可以使用,但如果您移动了项目符号列表控件,它将会中断,因为层次结构会发生变化。

另一种方法是使用jQuery。在您的示例中,您可以执行此操作:

$('[id$=BulletedList1]').children('li').size()

这将选择以'BulletedList1'结尾的元素,获取li子元素,然后返回集合的大小。