2011-11-23 15 views

Odpowiedz

31
$('#mydiv').text().length 

powinien załatwić sprawę.

+0

yep dzięki. dokładnie to, co chciałem – eastboundr

+0

Doceniam prostotę tego –

+0

to jest złe, to nie wystarczy zliczyć wyświetlanych znaków tekstowych, zlicza cały tekst wewnątrz div w html jak tagi i skrypty. hoever nie mogłem znaleźć innego sposobu, więc aby to działało, wszystko wewnątrz div musi być zwykłym tekstem (nie wspominając o tym, że policzy białe spacje) – Benedictus

10

Spróbuj tego. Przycinam, aby uniknąć białych spacji na początku lub końcu treści.

$.trim($("#mydiv").text()).length 

Jeśli chcesz zachować spacje również w liczeniu, nie trymuj go, po prostu użyj tego.

$("#mydiv").text().length 
+0

Dzięki temu dzieło zadziałało jak czar! Właściwie to ja też chcę mieć białe przestrzenie, ponieważ robię "div" czytaj więcej "czytaj mniej", dopóki tekst rozszerza div na pewną wysokość, na koniec ustawię przycisk czytaj więcej. Więc biała przestrzeń jest w porządku, jeśli jest częścią wyboru redaktora do formatowania lub stylu. – eastboundr

+1

Przepraszamy za to, że nie wyjaśniamy więcej w pytaniu. – eastboundr

3

Próbka
http://jsfiddle.net/TrMRB/

$("#mydiv p").text().length; 
+0

Rzeczywiście masz również podziały liniowe w dziale div. WIĘC lepiej jest uzyskać dostęp do określonego elementu i "przycinać" tak jak "ShankarSangoli". – Smamatti

+0

dziękuję, tak długo, jak zajmuje przestrzeń, biała przestrzeń jest ok, ponieważ chcę, aby pole div miało określoną długość, a następnie "czytaj więcej". Tak więc bardziej martwię się o niektóre znaki, które nie zajmują miejsca. – eastboundr

Powiązane problemy