2009-12-14 17 views
10

Sembra piuttosto semplice ma non riesco a farlo funzionare.Count div con una determinata classe

Ho due div con la classe 'utente'. Voglio produrre "hai 2 div".

<script type="text/javascript"> 
    $(document).ready(function() { 
     function divcount() { 
      var mycount = $('.user').length(); 
      document.write(mycount) 
     } 
    }); 
</script> 

Sono sicuro che mi manca qualcosa di semplice ..

+0

Wess, non è possibile scrivere sul documento dopo che il DOM è stato completato utilizzando 'document.write'. Prova invece: '$ (document.body) .append (mycount)' e poi assicurati di chiamare la funzione 'divcount()' da qualche parte per attivarla. –

+0

dovrebbe sempre usare 'console.log (String);' per eseguire il debug :) funziona molto meglio di 'document.write' – Charles

risposta

8

Length è un non di proprietà di una funzione. La dimensione è una funzione.

+0

Questo collegamento ha funzionato! grazie :) – wesbos

10

È $('.user').length (length property of Array) o $('.user').size() (size method of jQuery).

+0

Ho provato entrambi e non riesco a ottenere l'output di una cifra nel testo. Come lo farei? – wesbos

+0

Rimuovere la funzione divcount. –

+0

@Wes: Chiamate mai la funzione 'divcount'? – Gumbo

1

È solo $('.user').length. È una proprietà, non una chiamata al metodo.

1
$(".user").length // use the length property 

$(".user").size() // use the size method 

avviso che il codice deve essere incluso nel blocco $ (function() {...}); come:

$(function(){ 
    alert($(".user").length); 
    alert($(".user").size()); 
}); 
Problemi correlati