• ベストアンサー

入力フォーム内の字数制限

400字以内の作文を打って送ってもらおうと思い、 入力フォームを作ろうとしたのですが、 どの本にも文字数制限の事が載っていなくて困っています。 どなたかご存じな方、お教え願えないでしょうか? どうぞよろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • 665
  • ベストアンサー率72% (18/25)
回答No.6

送信しようとした際に文字数チェックを行うものです。 最大文字数を越えていた場合は、送信できないようになっています。 フォーム <form action="***" method="post" onsubmit="return checkForm(this)"> <p><input type="submit" value="送信"></p> <p><textarea name="input1"></textarea></p> </form> JavaScript <script type="text/javascript> <!-- function checkForm(obj) { var maxLen = 400;// 最大文字数 if (obj.input1.value.length > maxLen) { alert(maxLen + "文字以内で入力してください。"); return false; } else { return true; } } //--> </script> また、改行文字を無視するならこのようになります。 <script type="text/javascript> <!-- function checkForm(obj) { var maxLen = 400;// 最大文字数 if (obj.input1.value.replace(/\r|\n/g, "").length > maxLen) { alert(maxLen + "文字以内で入力してください。"); return false; } else { return true; } } //--> </script> 一応言っておくと、JavaScriptを無効にすれば何文字でも送信できるので、必ずCGI側でもチェックを行うようにしてください。

uoriki
質問者

お礼

とても詳しい解説とソースをありがとうございます。 力不足なりに目指していた高き目標は、まさに、665さまが教えて下さった「最大文字数を越えていた場合は、送信できない」というものでしたが、 CGIのチェックをしなければならないのは…全くわからないので残念です。これからは CGIの勉強を少ししようと思います。 この場をおかりして、みなさん本当にどうもありがとうございました!

その他の回答 (5)

  • kesokeso
  • ベストアンサー率0% (0/1)
回答No.5

syonepさんのようにHTMLでmaxlengthで制御するとよいと思います。 <input type="text" size="30" maxlength="400"> 注意点として全角や半角、そして環境によってばらける、というのがありますが(参考URL)

参考URL:
http://www.phoenix-c.or.jp/~zspc/cgi-bin/wwwlng.cgi?print+2000-08/00080016.txt
  • kesokeso
  • ベストアンサー率0% (0/1)
回答No.4

syonepさんのようにHTMLでmaxlengthで制御するとよいと思います。 <input type="text" size="30" maxlength="400"> 注意点として全角や半角、そして環境によってばらける、というのがありますが(参考URL)

参考URL:
http://www.phoenix-c.or.jp/~zspc/cgi-bin/wwwlng.cgi?print+2000-08/00080016.txt
uoriki
質問者

お礼

参考URLどうもありがとうございます。 CGIもASPも全く知識がないのですが、とりあえずみなさまがご助言してくださったMaxLengthをもう少し自分なりに調べて使ってみようと思っています。

  • cookei
  • ベストアンサー率33% (4/12)
回答No.3

テキストエリアの文字数チェックはJavaScript側で行場合が多いです。 ↓----------------------------------------- <html> <head> <script language="javascript"> <!-- function checkLength() { var intMaxLength = 400; if (eval(document.form1.input1.value.length) > intMaxLength) { alert(intMaxLength + "字以下で入力してください。"); document.form1.input1.focus(); } } --> </script> </head> <body> <form name="form1"> <textarea name="input1" rows="5" onblur="checkLength();"></textarea> </form> </body> <html>

uoriki
質問者

お礼

ソースを打っていただきまして感謝します! 入力フォームのかたちは、Perl(?)だったりCGIを使ったりいろいろあることがなんとなくわかってきてJavaScript で大丈夫なのかな? と思い始めていたので、安心しました。 どうもありがとうございました。

  • Gimli
  • ベストアンサー率47% (9/19)
回答No.2

作文なので、テキストエリアを使用しますよね。 ↓これはどうでしょう。 http://www.openspc2.org/reibun/javascript/form_textarea/005/index.html

参考URL:
http://www.openspc2.org/reibun/javascript/form_textarea/005/index.html
uoriki
質問者

お礼

こんなHPがあるのですね。 初心者の私は、ちょっと難しいと思ってしまいましたが、とても参考になりました。 どうもありがとうございました☆

  • syonep
  • ベストアンサー率26% (64/242)
回答No.1

<input type="text" max=800> じゃだめですか?

uoriki
質問者

お礼

お早い回答をどうもありがとうございました。 JavaScriptは初心者なので、助かりました。

関連するQ&A

  • サイト上の「送信フォーム」での「字数制限」の関係で

    サイト上に用意されている「送信フォーム」を使って問合せなどをする時に、 送信する本文について、「○○字以内で」となっている場合があります。 で、その制限をオーバーしたような場合なんですが、 私の知る限りでは、たとえば  「本文は○○字以内にしてください。」 のように単純な注意が表示されるものしか見たことがありませんで、 それだと、 『はて、何文字ぐらい縮めればいいだろうか?』ということで、 トライアルを繰り返したりということにもなりがちです。 ---- おたずねですが、 ◎ フォームの作り方として、たとえば   『○○文字分オーバーしていますので、・・・』  のように "具体的な数字" で表示する方法はないものなんでしょうか? ◎ もしそれが可能という場合に、  そういう親切な作り方にしている実例をご存知でしたらよろしくお願いします。 --

  • 字数制限のあるときの原稿用紙のルール

     原稿用紙のルールで、行の最初には句点。や読点、は打たないで、前の行の最後の文字のところに一緒に書くか、枠の外に書く、といったものがありますよね?  しかし、東京都立高校の入試での「二百字以内で書け」というように文字数の制限がある場合の作文では、そのルールは破ってもいいものなのでしょうか?  字数がきっかり決まっているので、句読点も行の先頭にきてもいいのでしょうか? ほかに閉じカッコなども、どうなのか。  そういう特殊な場合のルールについてくわしいかた、教えてください。

  • 送信字数制限の無いフォームCGI、レンタルサーバーを教えて下さい。

    サイトの問い合わせフォームを設置しようと思います。 現在使用している物(サーバー?)が送信文字の制限がある模様です。 送信できる文字数に制限のないCGI、ホスティングをご存知の方がいらっしゃいましたらお教え頂きたく、よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • 応募フォームの入力方法

    とある求人サイトでネット上から申し込む「応募フォーム」があるのですが そこの入力欄は改行が反映されないのと、入力できる文字数が少なくて困っています。 改行されないと見難い上に、文字数(長々と文章を入力してるわけではないのですが)も 制限があるということは、極めて短い文章で入力すべきでしょうか? 見難くても文字数制限内で書いた方が良いでしょうか? 30~35行で折り返す枠内なのですが(同じサイト内の応募フォームでも 入力項目が各社によって違い、文字数も変わってくるようです) それに合わせて読みやすいように改行した方が良いのでしょうか?

  • ACCESSの字数制限

    こんにちわ! すっごく簡単な事で申し訳ないのですが・・・ ACCESS(2000を使ってます)で、文字数の制限をするにはどうしたらよいのでしょうか????? 「10文字限定!」というのは分かるのですが、「10文字まで入力できる」というのが分かりません。 素人質問で申し訳ありませんが、よろしくお願いします・・・ 仕事で切羽詰ってます・・・(^^;;

  • 教えて!goo での字数制限のことで

    このサイトでの字数制限の関係でおたずねします。 (goo に問い合わせればいい話ではありますが、  回答が届くのに結構時間が掛かるようでもありますので、  既にお分かりの方がおられましたらよろしくお願いします。)   ---- 1. たとえば、質問文が長すぎると、  【入力されたテキストの長さは 800 文字以上です。】 のように注意されたりしますが、 この種の制限(お礼、補足などにも文字数制限があるようですが)については、 サイト上では特に説明はされていないんでしょうか? 「使い方」などには見当たらないようではありますが。 2. たとえば質問文での 800 文字ですが、 (i)これは全角での文字数でしょうか? (ii)半角の英数字などについては、  ・それぞれ1文字なんでしょうか?  ・それとも2文字分で全角1文字にカウントされるんでしょうか? (iii)改行やタブについても1文字と考えておけばいいんでしょうか? --

  • フォームの<TEXTAREA>で文字数制限する方法はありますか?

    こんにちは。フォームの<TEXTAREA>で入力文字数を制限をする方法を知りたいのですが、解る方がいらっしゃいましたら教えてください。 MAXLENGTHなどは使用できないようでしたので、Javascriptでの制限方法などがあるのかなと思い書き込みさせていただきました。具体的には全角150文字前後に制限したいと思っております。(※前後全角10文字くらいは誤差があってもかまいません。) サーバーサイドではなくクライアントサイドで動く仕様のものが良いので、こちらに書き込みさせていただきました。よろしくお願い致します。

  • フォームの文字数制限を解除したい

    kent webさんのフォームメールを使っているのですが、文字数制限があり、メッセージを沢山入力すると、「メッセージの入力内容が大きすぎます」というエラーがでてしまいます。300文字程度は入力できるようにしたいと思います。textarea に関する何を改造すればうまくいくでしょうか?皆さんよろしくお願いします。

    • ベストアンサー
    • CGI
  • 字数制限

    エントリーシートや志望動機などで200文字以内と字数の指定がある場合がよくあります。ぴったり200文字だと印象は良くなりますか?それとも文字数は合否と関係ありませんか?

  • Excel2002 パスワードの字数制限

    エクセル保存時の読み取り、書き込みパスワード設定の字数制限ですが、 マイクロソフトExcelヘルプでは「255半角文字以内の文字、数字、スペース、記号またはその組み合わせ・・」とありますが、実際には、半角15文字しか入力できません。 どなたか、正確な字数制限お分かりの方、教えてください。

専門家に質問してみよう