我有一堆元素<div id='id1'></div>
,並想返回它們的數量/數量。,如何根據id獲取元素的數量?
我使用下面的代碼,但它總是會返回值1:
alert($('#id1').size());
我在做什麼錯?
我有一堆元素<div id='id1'></div>
,並想返回它們的數量/數量。,如何根據id獲取元素的數量?
我使用下面的代碼,但它總是會返回值1:
alert($('#id1').size());
我在做什麼錯?
我想出了我自己的答案。我應該這樣做:
alert($('body #id1').length);
我只是需要它返回一個大於1的值,並且這有竅門。
我知道我應該使用類而不是id,但在我的程序中,類已經用於特定的事情,我做了另一個基於不能有多個類名的類的動作,但那是另一個故事,並且超出了本主題的範圍。感謝大家誰插話。
我用這個作爲我的參考:http://stackoverflow.com/questions/1693109/counting-div-elements-based-on-id – 2010-01-20 06:10:22
請注意,應該只有一個具有特定標識符的項目開頭;你在做什麼被認爲是無效的。 jQuery在返回它找到的第一個之後正確停止。
如果您使用class="foo"
代替,則可以正確使用.size()
。例如,這個問題的StackOverflow的頁面上:
>>> $('.votecell').size()
8
應該只有1與任何給定的id
項目 - 如果你需要標記多個div,你應該使用class
。我懷疑jQuery優化$('#id')
,並返回只有第一,因此size
總是返回1
如果你想有多個具有相同'東西'的div你需要使用一個類。
<div class='class1'></div>
alert($('div.class1').size());
雖然ID應該是唯一的,$("[id='id1']").length
會得到你想要的(如果你不能改變的HTML)的東西。
如果'id1'是你的元素的'id',那麼應該只有一個項目:'id'假設是唯一的;其他,它不是*標識符* – 2010-01-20 05:52:03