アプリ版:「スタンプのみでお礼する」機能のリリースについて

下記だと文字数がなんか変なんです。???の状態です。
#文字を追加したりすると正常な文字数にならず。
#環境IE5.0

<SCRIPT language=JavaScript>
function test()
{
alert( testarea.value.length ) ;
}
</SCRIPT>
<TEXTAREA NAME="testarea">あいうえおか</TEXTAREA><BR>
<A HREF="test.html" onmouseover="test()">文字数チェック</A>

A 回答 (2件)

こんな風にしてみては?



function test()
{
  str = testarea.value.replace(/\r\n|\r|\n/g, '');
  alert(str.length);
}

全ての改行を抜いて、文字数をカウントします。
    • good
    • 0
この回答へのお礼

皆様、回答ありがとうございました。javascript初心者としてははじめての記述内容もあり、勉強になりました。そして、初心者としては、より簡単な方法で、今回の課題は解決させていただきます。

(^^;

お礼日時:2001/05/18 12:00

 テキストエリアの中で改行した時におかしくなりませんか?


 Windows 上では、改行文字は復帰文字( "\r" )と行送り文字( "\n" )の
2文字で構成されますので、「あいう<改行>えおか」と入力した状態だと 8文字
となります。
 改行文字があるかどうかは、

  testarea.value.indexOf( "\r\n", i )

で検索できます。見つかれば 0から数えて何文字目にあるかが返ってき、見つから
なければ -1 が返ってきます( i には 文字列の何文字目から検索するかを指定
します)ので、改行文字が何文字あるかを調べてその分減らしてあげましょう。
(改行文字を数えないのであれば 改行文字数×2を、1文字として数えるのであれば
改行文字数を引けば良いですよね)

※ Macintosh や Unix などでは、改行を構成する文字や文字数も異なります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!