勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

郵便番号を入力すると住所を自動で入力してくれる「ajaxzip3」ライブラリの利用方法

  JavaScript

お問い合わせフォームのようなページで郵便番号及び住所欄がある場合、ユーザーが郵便番号を入力すると自動で住所欄も入力される機能を「ajaxzip3」ライブラリで実装することが多い。ただ、本サイトに実装方法をメモしておらず毎回過去に実装したソースコードを探し出すという無駄な作業をしていたのでこの機会にメモしておく。

 

サンプル

https://taitan916.info/sample/ajaxzip3/

フォームによっては郵便番号欄を分けたり、都道府県と住所を分けたりと様々なパターンがあるので、使いそうな4パターンを上記で試すことができる筈。

 

ajaxzip3

公式サイト

https://yubinbango.github.io/

GitHub

https://github.com/ajaxzip3/ajaxzip3.github.io

CDN

CDNで使う場合は以下を記述する。

<script src="https://ajaxzip3.github.io/ajaxzip3.js" charset="UTF-8"></script>

 

実装方法

ソースコード

<div class="contents">
    <div class="title">郵便番号入力欄が1つ&都道府県と住所別の場合</div>
    <div>
        郵便番号
        <input type="text" name="zip_1" maxlength="8" onKeyUp="AjaxZip3.zip2addr(this,'','pref_1','addr_1');">
    </div>
    <div>
        都道府県
        <input type="text" name="pref_1">
    </div>
    <div>
        住所
        <input type="text" name="addr_1">
    </div>
</div>

<div class="contents">
    <div class="title">郵便番号入力欄が1つ&都道府県と住所分けない場合</div>
    <div>
        郵便番号
        <input type="text" name="zip_2" maxlength="8" onKeyUp="AjaxZip3.zip2addr(this,'','addr_2','addr_2');">
    </div>
    <div>
        住所
        <input type="text" name="addr_2">
    </div>
</div>

<div class="contents">
    <div class="title">郵便番号入力欄が2つ&都道府県と住所別の場合</div>
    <div>
        郵便番号
        <input type="text" name="zip_3_1" size="4" maxlength="3"> - <input type="text" name="zip_3_2" size="5" maxlength="4" onKeyUp="AjaxZip3.zip2addr('zip_3_1','zip_3_2','pref_3','addr_3');">
    </div>
    <div>
        都道府県
        <input type="text" name="pref_3">
    </div>
    <div>
        住所
        <input type="text" name="addr_3">
    </div>
</div>

<div class="contents">
    <div class="title">郵便番号入力欄が2つ&都道府県と住所分けない場合</div>
    <div>
        郵便番号
        <input type="text" name="zip_4_1" size="4" maxlength="3"> - <input type="text" name="zip_4_2" size="5" maxlength="4" onKeyUp="AjaxZip3.zip2addr('zip_4_1','zip_4_2','addr_4','addr_4');">
    </div>
    <div>
        住所
        <input type="text" name="addr_4">
    </div>
</div>

<script src="https://ajaxzip3.github.io/ajaxzip3.js" charset="UTF-8"></script>

 - JavaScript

  関連記事

JavaScriptで数値のカウントアップ及びカウントダウン

JavaScript(一部jQuery)で数値のカウントアップ及びカウントダウン ...

JavaScriptで全角半角を判別の上で文字数カウントを行う

やりたかった事は「全角5文字・半角10文字以内の入力フォーム」 みたいなもの。 ...

JavaScriptでランダムなカラーコードを生成する「RandomColor」ライブラリの利用方法

先日PHPでランダムなカラーコードを生成する「RandomColor.php」ラ ...

JavaScriptでリファラをチェックし、ホスト名と一致するかどうかで分岐処理する方法

ページアクセス時にリファラがホスト名と一致していれば何らかの処理を、一致しない場 ...

jQueryで対象の要素をまとめて親要素で囲む方法

あるシステムで出力されているHTMLタグを指定した親要素で囲みたいというケースが ...