• ベストアンサー

フォーム テキストエリアのチェック

1.フォームでsubmit俗に言う[送信ボタン]を押すと同時に   テキストボックス内に    未記入やスペースが記入がされていない事    半角英数字のみ記入されている事   をチェック後   アラートを出すもしくは送信させない 2.テキストボックス内に半角英数字以外は記入不可能にする 上記のような事をする方法をお教え下さい。

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

  • ベストアンサー
  • onimotsu
  • ベストアンサー率36% (279/758)
回答No.1

プロバイダーのcgiを使用してこのように使っています。 送信ボタンを押したときに未入力があれば未入力部分にフォーカスを移します。 </SCRIPT><SCRIPT language="JavaScript"> <!-- function kakunin() { if (document.F1.項目1.value == "") { alert("項目1が入力されていません。"); document.F1.項目1.focus(); return(false); } if (document.F1.項目2.value == "") { alert("項目2が入力されていません。"); document.F1.項目2.focus(); return(false); } return(true); } // --> // </SCRIPT> <FORM NAME="F1" METHOD=POST ACTION="http://www.×××.cgi" onSubmit="return kakunin()"> <INPUT type="submit" value="送信ボタン" onmouseover="_HpbScrollStatus;" onmouseout="_HpbStopScrollStatus();"> <input type="reset" value="リセット"> return kakunin()の「kakunin」は任意に変更可だと思います。 2については只今確認中。

参考URL:
http://tohoho.wakusei.ne.jp/wwwmail.htm
longmore
質問者

お礼

たいへん参考になりました。 ありがとうございました。

その他の回答 (4)

  • selene_pl
  • ベストアンサー率49% (102/207)
回答No.5

それはちょっと難しそうですね。 キーボードイベントを使う方法もあるかもしれませんが、 素直に、submitさせた後でチェックするほうがいいと思います。

  • selene_pl
  • ベストアンサー率49% (102/207)
回答No.4

例文そのまま(ime-mode:disabled;)で、半角英数しか受け付けなくできますよ。 試してみればわかりますが、一時的に日本語入力がOFFになります。 わかると思って書きませんでしたが、言葉足らずでしたね。 もっとも、ネットスケープをお使いなら機能しませんが。

longmore
質問者

補足

こちらこそ言葉足らずでした。 半角英数というよりは アルファベット(a-z)と アラビア数字(0-9)のみで このやり方だと記号の類も入力可能なので No.3の質問になりました。

  • selene_pl
  • ベストアンサー率49% (102/207)
回答No.3

2.については、とほほさんのところにありました。(参考リンク) スタイルシートでできるようです。(IE5.0以上) 以下、引用。 ime-mode: mode (e5) テキストフォームなどにフォーカスが移動した時の日本語変換(IME)の動作を指定します。通常はautoで、 activeはフォーカス移動時にON、inactiveはフォーカス移動時にオフ、disabledはIMEの使用を禁止しま す。 メールアドレス: <INPUT TYPE=text STYLE="ime-mode:disabled">

参考URL:
http://tohoho.wakusei.ne.jp/wwwcss2.htm#Other
longmore
質問者

お礼

聞いてみるとスゴイ簡単な答えなのですが 全く知りませんでした。 スタイルシートって便利ですね。 ありがとうございました。 半角英数(A-z,0-9)のみしか受け付けないようには 出来ないものですかね?

  • onimotsu
  • ベストアンサー率36% (279/758)
回答No.2

下記URLに例文が載ってました。 参考までに。

参考URL:
http://www.cj-c.com/java_s/j_f_true.htm
longmore
質問者

お礼

No.1と同じタイプですね。 ありがとうございました。

関連するQ&A

  • チェックボックスをクリックしたら、テキストに入力出来る様にしたいです

    今メールフォームを作っています。 チェックボックスにチェックしたら、テキストフィールドに記入しないと、 エラーがでる様にJavascriptでチェックをかけたいのですが教えて頂けませんでしょうか。 下記のようなフォームにしたいです。 ■フォーム これをあなたは何処で知りましたか? チェックボックス1 新聞 チェックボックス2 テレビ チェックボックス3 その他 テキストフィールド その他を選んだ方は記入して下さい。 このチェックボックスは必須にして、 チェックボックス1~3までのどれかをチェックしないとアラートを表示したいです。 また、チェックボックス3を選択したのにテキストフィールドに入力していない場合も アラートを表示したいです。 上記のalertは送信ボタン<input name="submit" type="submit" value="情報を送信する"> を押した際に出したいです。 この様なチェックボックスのグループを同じフォームに2つ作りたいです。

  • チェックボックスとテキストフィールドを連動させて、Javascriptでチェックをかけたい

    このようなアンケートがあるとします。 //アンケートスタート ●Q1 あなたはJavascriptを使いこなしていますか? ラジオボタン回答1 使いこなしている ラジオボタン回答2 あまり使いこなしているといえない ラジオボタン回答3 ぜんぜん使いこなしていない ●Q2 Q1で「あまり使いこなしているといえない」 「ぜんぜん使いこなしていない」と回答した方のみお答えください。 その理由はどのようなものですか? チェックボックス回答1 むずかしい チェックボックス回答2 わかりにくい チェックボックス回答3 そのほか テキストフィールド そのほかの理由(       ) 【送信ボタン】 //アンケートエンド ■上のアンケートでJavascriptを使用して 次のことをしたいのですが、教えてください。 1.Q1の2と3にチェックがあるのに、 Q2に未回答のままフォームデータを送信しようとした場合に、 アラートを表示させたい 2.Q2で3を選んだ人にもかかわらず、 そのほかの理由テキストフィールドに未記入のまま フォームデータを送信しようとした場合、 アラートを表示させたい よろしくお願いします。

  • チェックボックスとテキストの値

    初心者で勉強中です。できるだけわかりやすくしていただけると助かります。 前提として、 (1)フォーム名:Aform フォーム名:Bformと2つのフォームがあります。 (2)Aformには、Atextというテキストボックスがあります。 (3)Bformには、複数のチェックボックスがあります。  テキストボックスの名前は、CB1、CB2・・・と連番になっています。  aspでデータを書き込みながらチェックボックスを作成しているため、チェックボックスの数はその都度変わります。 ここからが質問なのですが…行いたい事は、 (1)チェックボックスは、1つ以外チェックできないようにし、2つ目のチェックでアラートを出し、チェックをできないようにする。 (2)チェックボックスのvalueをAformのAtextにセット (3)チェックボックスを外した時には、AformのAtextはクリア。 ※aformのAtextは、input type=hidden でもいいと考えています。 現在、調べ調べて、チェックボックスのOnClickで2つ以上でアラートは出て、Atextにも値はセットされるのですが、チェックボックスをクリアした時に、Atext値が残ってしまっています。 どなたか、教えていただけないでしょうか?

  • マクロ フォームでのチェックボックスについて

    教えてください。 1)フォームでテキストボックス2つ、ボタンで新しい入力フォーム表示 2)入力フォームでチェックボックス6個、コンボボックス6個を作ります。 3)チェックボックスにチェック(1個のみ)したら、1)のフォームのテキストボックスにチェックされた、項目とコンボボックスで選択された内容が転記したい。 例)果物にチェック、コンボでブドウと選択  テキストボックス→果物 ブドウ というようにフォームに転記させたい。 以前、シートでのマクロを教えていただきましたが、フォームだと頭が混乱してしまいました。 簡単で良いので、マクロの記述を教えてください。

  • 2つのフォームから同時に送信するには

    実は2つのフォームから同時にpostする方法が分からず困っています。一つのフォーム1はデータベースからデータを取り出して、ループをかけてチェックボックスのvalueに入れて表示しています。フォーム2では別内容をテキストボックスに入れます。そして、この2つを同時に別PHPファイルに送信したいのですが、片方しか送信されません。一つのボタンをクリックすると、2つのフォーム内容がpostされるようにするにはどうすればよいのでしょうか。どなたかご教授、アドバイス宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • 検索フォームの入力値のチェック

    以下は、いくつもある検索フォームの中のテキストボックスの一つです。 ここに、次のエラーチェックを仕込みたいのですが。 (1) 17で始まる8桁数字以外はアラートを出す。NULLもダメ。 (2) 半角数字以外が入力されたときは、フォーカスが離れた時アラートを表示NULLはOK。 (3) ここに示していないその他のフォームを含め、一個でも上記エラーがあったら   検索ボタン押下時にアラートを出し、POSTを許可しない。 いろいろエラーになったり、(1) ができてなかったりで、すみませんが 完璧にするためのアドバイスいただけないでしょうか。IE6オンリーで十分です。 <html> <head> <script type="text/javascript"> function NullCheck() { if ( document.query.numberform.value=="" ) { alert( "必ず17で始まる半角数字8桁で指定してください。\n例:17910031" ); return 1; } return false; } function NumbCheck() { var str = document.query.numberform.value; if( str.match( /[^0-9]+/ ) ) { alert("不正な値がみつかりました。"); return 1; } return 0; } /* 全部チェック */ function AllCheck() { var check = 0; check += NullCheck01(); check += nmck09(); if( check > 0 ) { return false; } return check; } </script> </head> <body> <form method="post" action="list.php" target="list" id="query" name="query"> <input value="17000000" size="10" type="text" name="numberform" onblur="NumbCheck();NullCheck();">から <input type="submit" name="exec" value="検索" onclick="return AllCheck();"> </form> </body> </html>

  • フォームの入力欄の未記入チェック方法

    フォーム内のテキストボックスやチェックボックスでひとつでも未記入項目があると「未記入項目があります」のダイアログボックスを表示させて元の画面にもどりたいのですが if(document.フォーム名.部品名.value == "") { alert( "名前を記入してください" ); document.フォーム名.部品名.focus(); return false; } } 上のソースでは部品の数だけ同じ処理を書かないといけないのです。この中に全ての部品をまとめてひとつでも空欄があればエラー表示させる書き方はないでしょうか?

  • php テキストエリアの入力チェック

    現在、phpを使用してメールフォームを作成しております初心者です。 入力確認画面(二画面目)において テキストエリア(お問い合わせ内容入力エリア)内の入力内容が ・半角もしくは全角スペースのみ ・テキストエリア未入力で初期値  【 こちらにお問い合わせ内容を入力! 】 のままの場合のチェック&エラーメッセージを表示させたくて 下記のようなphpソースを記述してあれこれやってるのですが思うようにいきません。 テキストエリアに半角英数、全角文字が入力された場合は 思い通りにチェックを通過します。 しかし・・・ ・全角スペース1文字分以上 ・半角スペース2文字分以上 入力された場合もチェックを通過してしまいます。 半角スペース1文字分までの入力の場合はエラーメッセージを表示してくれるのですが・・・ ~前略~ <?php //お問い合わせ内容 if ($contents == " " || $contents == "こちらにお問い合わせ内容を入力!") { $errormsg[] = "お問い合わせ内容を入力して下さい"; } ?> ~後略~ 当方まだまだphp初心者れべる故、わかりやすくご回答頂けると有難いのですが・・・ どなたかご回答宜しくお願い致します。

    • ベストアンサー
    • PHP
  • チェックボックスONでテキストエリアを大きく

    チェックボックスをONにするとフォームテキストエリアのサイズが変更できるようにすることは可能でしょうか? できるようでしたら、やり方を教えてください

  • フォームの入力チェック

    こんにちは、今回はホームページのワザについて教えて下さい~。 今フォームを作成してアンケートを回答してもらうページを作成中なのですが、そこで躓いてしまいました。 CGIでフォームを作成しているのですが、そのフォームの中の回答で必須項目を作りたいのです。回答していないで送信ボタンを押すとダイヤログが出て「××をご記入ください」のようなメッセージを出す・・・こんなのが理想なのです。 今普通にCGIでフォームだけは完了したのですが、そのチェック機能をjavaでつけても動いてくれないのです(泣)。全くjavaが働かず、普通に送信されてしまいます。 CGIを外してjavaだけでやろうとするとアドレスを予め設定していないという事でエラーになりますし・・・。今は <SCRIPT language="JavaScript"> <!-- function Check(){ if(document.myform.ks.value==""){ alert("必須項目を記入してください。"); return false; } ・ ・ ・ // --> </SCRIPT> </HEAD> <BODY><!--××× CGI Program--> <FORM action=http://www.CGIのテキストまでのパス.txt method=post onSubmit="return Check()"><INPUT type=hidden value=××@×× name=sendto><INPUT type=hidden value=/mail/××.htm name=success><!--ここまで--><A name=TOP></A> としてあります・・・。 すみません!どなたかわかる方!ぜひ教えて下さい、お願いいたします!

    • ベストアンサー
    • HTML