フォームの入力チェックをするんだ
お名前※必須
何かの番号※必須 半角数値のみ
このスクリプトの内容について
$(function()
{

 //----------------------------------------------
 // 変数宣言
 //----------------------------------------------
 var viewTop = 20;
 var imgPath = './img/';

 //----------------------------------------------
 // コントローラーの設定
 //----------------------------------------------
 $("input[name=name]").blur(chkName);
 $("input[name=number]").blur(chkNum);

 //----------------------------------------------
 // 初期処理
 //----------------------------------------------

 //----------------------------------------------
 // メソッド
 //----------------------------------------------

 /*
  *
  * マウスオーバー時の画像表示用メソッド
  *
  */
 function chkName()
 {
  var thisData = $(this).val();

  if(thisData === "")
  {
   $(this).css('background-color','#CB99CC');
   $(this).parent().append('

※お名前は必須入力です

'); } else { $(this).css('background-color','#FFFFFF'); $(this).next().remove(); } } function chkNum() { var thisData = $(this).val(); if(thisData === "") { $(this).css('background-color','#CB99CC'); $(this).parent().append('

※お名前は必須入力です

'); } else if(thisData.match(/[^0-9]/ig) !== null) { $(this).css('background-color','#CB99CC'); $(this).parent().append('

※半角数字で入力してください。

'); } else { $(this).css('background-color','#FFFFFF'); $(this).next().remove(); } } }); /* * 処理の詳細とメモ * * ■処理の順番と解説 * $("input[name=name]") * inputタグのnameがnameのもの、の指定となる。 * で、そこに blurでフォーカスが外れた時とする。 * * numberも同様 * * ■chkNameの内容 * 1:まず、入力データを取得 * 2:入力データが空の場合 * 2-1:フォームの色を変化させる * 2-2:parentで親要素を呼び出して、そこにpタグでエラーメッセージを表示 * →つまり、thisはフォームを指しているわけで * その親要素(div)を呼び出し、そのdiv内にpタグをappend(追加)しているという事です。 * 3:エラーがなければ * フォームの色を白にして * pタグを消してしまいます。 * appendで追加されているので、現状は * div > input > p の順番でなっているので、next(次要素)をremoveするでOKですね。 * * ■chkNumの内容はもうやってる事同じ。 * 正規表現で数値以外が入っていないかをチェックしてるだけ。 * * */

© Company 2012