勉強したことのメモ

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にて「ipify API」を利用してユーザのIPアドレスを取得する方法

あるサイトでユーザのIPアドレスを取得したいというケースがあった。普段であればP ...

バニラJS対応(jQuery非依存)の通知(トースト)系ライブラリ「Notyf」の利用方法

以前に通知(トースト)系ライブラリ「Toastr」の利用方法をメモしたが、こちら ...

Android2.3でJavaScriptのエラー

Android2.3で関数が動かないといったエラーが発生していた。 担当外だった ...

構造化データ(JSON-LD形式)をJavaScriptで動的に描写する方法

あるサイトに構造化データをJSON-LD形式で出力させたかった。ただ、当該環境で ...

表示範囲を自由に変更可能な折れ線グラフが表示できるJSライブラリ amCharts の使用方法

どこかのサイトを閲覧していた際に、恐らくはJavaScriptのライブラリで描写 ...