今回の例では、正規表現と文字列長の2つを組み合わせて判定します。
なおチェック対象としては次のようなものが考えられます。
・年、月
・電話番号(ハイフンなし)
・暗証番号
例:【年・月の入力値をチェックする場合】
——————
function num_figure_check(year, month) { if(year == '' || month == '') { //どちらかの入力がない場合はNG return false; }else if( !(year.match(/^[0-9]+/)) || year.length != 4) { //半角英数でない、もしくは4桁でない場合はNG return false; }else if( !(year.match(/^[0-9]+/)) || month.length > 2) { //半角英数でない、もしくは3桁を越す場合はNG return false; } return true; }
——————
ちなみにJavaScriptでのチェックは、ブラウザ側で無効にされてしまうと途端に役立たずになるため、PHPプログラムなどで値を次の画面やDBに渡す場合は必ずPHP側でのチェックも行ってください。
JavaScriptでのチェックはサーバーとの通信が発生しないので、基本的には「ユーザビリティの向上」「サーバー負荷の軽減」の2点が主なメリットになります。入力値の正確性を担保するものではないのでここは使い分けでお願いします。
この投稿へのコメント