2010-03-12 36 views
0

我有一個asp:bulletedlist控件,它位於div標籤內,我需要計算控件中列表項的數量。搜索互聯網,並注意到實際上是由物品還給了HTML是IE <li>名單,我想我可以使用的例子:如何使用JavaScript計算asp.bulletedlist中的listitems的數量

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

然而,當我這樣做,它拋出和錯誤說該控件不存在任何對象。

所以,我的問題是,因爲我必須做這個客戶端,因爲我想用它來設置div標籤的高度,你如何計算一個asp:bulletedlist控件中的項目數與javascript?

回答

1

您不能像使用document.getElementById一樣使用它,因爲呈現時Asp.Net控件的實際ID與您爲控件上的ID設置的ID不同。查看您的頁面的來源,您將看到實際的ID是什麼。如果你願意並且這段代碼應該可以工作,那麼你可以使用它,但是如果你移動了項目符號列表控件,它會中斷,因爲層次結構會改變。

另一種方法是使用jQuery。在你的榜樣,你可以這樣做:

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

這將選擇以「BulletedList1」結束,得到李的孩子,然後返回集合的大小的元素。

+0

從技術上講,只有當你的aspx頁面使用重寫的主頁面時,只有控件上的ID,但+1無論如何:) – 2010-03-12 17:57:10

+0

我不確定你的意思 - 你能解釋一下嗎? – 2010-03-12 18:46:45

相關問題