2011-11-23 3 views
13

こんにちは私はdivでjavascript/jqueryで表示される文字の数を数えたいと思っています。たとえば、JavaScriptでDIVの文字数をカウントするには

<div id=mydiv> 
<p>This is my div!</p> 
</div> 

15を取得するには、スペースを含むdivの文字数が必要です。

ありがとうございます!

答えて

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

はすべきことです。

+0

うん感謝。ちょうど私が欲しかったのは – eastboundr

+0

この簡潔さに感謝します –

+0

これは間違っています、それは表示されたテキスト文字を数えず、タグやスクリプトのようなHTMLのdiv内のすべてのテキストを数えます。私は他の方法を見つけることができませんでしたので、div内のすべてを動作させるにはプレーンテキストでなければなりません(白いスペースを数えます)。 – Benedictus

10

これを試してください。私は、コンテンツの開始または終了の空白を避けるためにトリミングしています。

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

また、カウントにもスペースを入れたい場合は、これを使用するだけでトリミングしないでください。

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

ありがとうございました!実際には、テキストをdivに特定の高さに展開している限り、 "read more"を "less read" divにしているので、最後にread moreボタンを置くので、空白も必要です。編集者が書式やスタイルを選択した場合、空白は問題ありません。 – eastboundr

+1

申し訳ありませんが、質問でより明確にしていない。 – eastboundr

3

サンプル
http://jsfiddle.net/TrMRB/

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

実際にはdivに改行もあります。したがって、特定の要素にアクセスし、_ShankarSangoli_のように 'トリミング 'する方が良いです。 – Smamatti

+0

実際にはスペースを取る限り、空白は大丈夫です。なぜなら、divボックスが特定の長さになり、「もっと読む」ようにしたいからです。だから、実際には、スペースを取らない文字についてもっと心配しています。 – eastboundr

関連する問題