• ベストアンサー

JavaScriptで入力チェックをしたい。

送信ボタンを押すとJavaScriptが起動して空欄の項目を指摘してくれるのはどんな感じで書くんでしょうか?教えて下さい。

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

  • ベストアンサー
noname#23059
noname#23059
回答No.3

簡単に書きます。 <html> <head> <title>タイトル</title> <script language="JavaScript"> <!-- // function doAction(f) { //入力チェック if (f.txtID.value == "") { alert("IDを入力してください。"); f.txtID.focus() return; } f.action = "XXX.html"; f.submit(); } //--> </script> </head> <body> <form name="frmMain" action="" method="post"> <input type="text" name="txtID" maxlength="10" value=""> <input type="button" name="btnOK" value="送信" onClick="doAction(this.form)"> </form> </body> </html> ボタンのクリックでJavaScriptの関数を呼び出します。 ここでは、この時にフォームを引数で渡してます。 関数内で、テキストのvalueをチェックしてます。 空白で無かった場合、アクションを設定してサブミットしてます。 アクションは最初からform内に書いててもOKです。

その他の回答 (2)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

とりあえず、テキストの抜けだけでしたら以下のような感じで。 一定の条件をつけたりする場合は、classをつかったりすると よいでしょう。 なんどかこの掲示板でもネタがあがっているので 検索してみるとよいでしょう。 ようは、formで要素一つ一つを検証して、問題があったら falseを返し、大丈夫ならtrueを返す。 それをformのonSubmitで受けるとだめなら次のページに いかない、よければ次のページにいくというフローですね。 <script language=javascript> function check(f){ for(var i=0;i<f.length;i++){ if (f[i].type=="text" && f[i].value==""){ alert(f[i].title+"が空欄です"); f[i].focus(); return false; } } return true } </script> <form action="hoge.htm" method="get" onSubmit="return check(this)"> 氏名:<input type="text" name="name" title="氏名"><br> 住所:<input type="text" name="address" title="住所"><br> Eメール:<input type="text" name="email" title="Eメール"><br> <input type="submit" value="送る"> </form>

  • SUPER-NEO
  • ベストアンサー率38% (706/1857)
回答No.1

とり急ぎになりますが、非常にわかりやすく説明されている サイトがございますので、紹介します。

参考URL:
http://www.tohoho-web.com/

関連するQ&A