1. TOP
  2. Web javascript
  3. [js] 電話番号のフォーマット、フォームでのバリデーション的なアレ

[js] 電話番号のフォーマット、フォームでのバリデーション的なアレ

カテゴリ:
Web
javascript
| トラックバック(0)
投稿者:yo yo

電話番号のパターン

国内固定番号系10桁、最初の桁は「0」
0XXXX X XXXX5桁-1桁-4桁
0XXX XX XXXX4桁-2桁-4桁
0XX XXX XXXX3桁-3桁-4桁
0X XXXX XXXX2桁-4桁-4桁
フリーダイヤル、ナビダイヤル、Q2 (0120,0800,0570,0990)
0XX0 XXX XXX4桁-3桁-3桁
携帯、PHS、IP電話等(020,050,060,070,080,090)11桁、最初の桁は「0」
0X0 XXXX XXXX3桁-4桁-4桁
特番系(110、199他)3桁、最初の桁は「1」
1XX3桁

イメージとコード

フォームに入力された電話番号のjavascriptでのバリデートの流れ。ハイフン有り無しでも正確に判別できるようにする。細かくやるなら「先頭が090か」など逐一条件分岐する。

  1. 先頭が0である
  2. ハイフン(-)でsplitすると、1つ(ハイフン未入力時)、もしくは3つ(ハイフン入力時)に分割できる
  3. ハイフン(-)を除いて10~11桁である
  4. splitした3つの内、1つ目の番号の塊が3桁、2つ目・3つ目が4桁になっている。
  5. splitした3つの内、1つ目の番号の塊が2~5桁、2つ目が1~4桁、3つ目が4桁になっている。

だいたいこんなイメージで下記の様な感じに書く。とりあえずのメモ。コピペしても動きません。


入力欄からハイフンをそもそも消してしまう場合はコレを記述する


参考

« [php] 「ページの有効期限切れ・フォーム再送信の確認」の対策 | ホーム | [その他] ウェブAPIが使えるインターネットFAX »

トラックバック

http://pulltab.info/mt/mt-tb.cgi/143
ページの先頭に戻る