jQuery के बाल तत्वों की गणना करें


324

<div id="selected">
  <ul>
    <li>29</li>
    <li>16</li>
    <li>5</li>
    <li>8</li>
    <li>10</li>
    <li>7</li>
  </ul>
</div>

मैं <li>तत्वों की कुल संख्या गिनना चाहता हूं <div id="selected"></div>। यह jQuery का उपयोग कैसे संभव है .children([selector])?



1
शुद्ध जेएस में, @ मो का जवाब अभी भी कम है, लेकिन उपयोग करेंelement.childelementCount
चार्ल्स एल।

जवाबों:


602

आप इस तरह .lengthबस एक उतरन चयनकर्ता के साथ उपयोग कर सकते हैं :

var count = $("#selected li").length;

यदि आपको उपयोग करना है .children(), तो यह इस तरह है:

var count = $("#selected ul").children().length;

आप यहां दोनों संस्करणों का परीक्षण कर सकते हैं



18

सबसे तेज़ एक:

$("div#selected ul li").length

2
यह सबसे तेजी से नहीं है, वास्तव में आप जोड़कर नीचे यह धीमा divवहाँ :) पर
निक Craver

1
यह वास्तव में निर्भर करता है कि आप किस ब्राउज़र का उपयोग करते हैं। कई आधुनिक ब्राउज़रों में, एलिमेंट या क्लास द्वारा खोजने से पहले एलिमेंट का उपयोग करते हुए एलिमेंट का उपयोग किया जाता है, जो धीमा है। जल्द ही यह किसी भी तरह से एक मूट बिंदु होगा, क्योंकि सभी डोम खोजों को एक मूल फ़ंक्शन का उपयोग करके किया जाएगा। किसी भी मामले में, एक साधारण getElementById ('चयनित') या $ ('# चयनित') इस बिंदु पर तेज़ होगा।
एलेक्स के

14
var length = $('#selected ul').children('li').length
// or the same:
var length = $('#selected ul > li').length

आप शायद liबच्चों के चयनकर्ता में भी चूक कर सकते हैं ।

देख लो .length


13

आप जावास्क्रिप्ट का उपयोग कर सकते हैं (jQuery की जरूरत नहीं है)

document.querySelectorAll('#selected li').length;


4

यह childElementCountशुद्ध जावास्क्रिप्ट में बस संभव है

var countItems = document.getElementsByTagName("ul")[0].childElementCount;
console.log(countItems);
<div id="selected">
  <ul>
    <li>29</li>
    <li>16</li>
    <li>5</li>
    <li>8</li>
    <li>10</li>
    <li>7</li>
  </ul>
</div>


1

शुद्ध जेएस

selected.children[0].children.length;

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.